- 记录自己第n次面试(n>3)
Warren98
Java面试python职场和发展java开发语言服务器linux
1.Spring Boot可执行JAR的内存分配答:“在Spring Boot可执行JAR中,JVM的内存通常分为两大块:堆(Heap)和栈(Stack)。堆内存:存放对象实例和数组,通过-Xms(初始)和-Xmx(最大)控制。比如java-Xms512m-Xmx1024m-jarapp.jar,表示启动时给512 MB堆,最大可以到1 024 MB。栈内存:每个线程有独立的栈帧,用来保存方法调用
- 为什么现在 Spring Boot 默认使用 CGLIB 了?
yourkin666
jvmjava开发语言
从SpringBoot2.0开始,默认的代理方式被改为了CGLIB(spring.aop.proxy-target-class=true)。这是因为CGLIB解决了一个使用JDK代理时非常棘手的痛点:代理对象内部方法调用无法触发AOP的问题。场景:假设你有一个UserServiceImpl对象被JDK代理了。你在它的methodA()方法内部调用了同一个类中的methodB()方法(通过this.
- JVM 内存共享区域详解
笑衬人心。
JAVA学习笔记jvmjava笔记
Java虚拟机在执行Java程序时,会将所管理的内存划分为若干个不同的数据区域。其中,堆(Heap)和方法区(MethodArea)是所有线程共享的区域,属于JVM的共享内存区。一、JVM内存结构总览区域名称是否线程共享说明程序计数器(ProgramCounterRegister)否当前线程执行字节码的行号指示器Java虚拟机栈(JVMStack)否每个线程私有,方法调用栈帧本地方法栈(Nativ
- java面试题07什么是多态?
码农颜
java开发语言
多态(Polymorphism)是面向对象编程(OOP)的三大核心特性之一(封装、继承、多态)。它允许不同类的对象对同一消息(方法调用)做出不同的响应,实现了“一个接口,多种实现”。多态的核心本质用父类/接口的引用操作子类/实现类的对象,在运行时根据实际对象类型动态决定调用哪个具体实现。多态的实现条件继承关系:存在父子类继承(或接口实现关系)方法重写:子类重写父类的方法向上转型:父类引用指向子类对
- javaSE(从0开始)day14
呼哧呼哧.
单元测试
目录Exception异常处理:异常的基本概念一、java异常:1、方法一:约定返回错误码。例如,处理一个文件,如果返回0,表示成功,返回其他整数,表示约定的错误码:2、方法二:在语言层面上提供一个异常处理机制。Java内置了一套异常处理机制,总是使用异常来表示错误。异常是一种class,因此它本身带有类型信息。异常可以在任何地方抛出,但只需要在上层捕获,这样就和方法调用分离了:3、异常的种类:首
- django - ORM-查询操作-1
米兔-miny
django-达内djangopython后端
查询简介数据库的查询需要使用管理器对象进行通过MyModel.objects管理器方法调用查询方法方法说明all()查询全部记录,返回QuerySet查询对象get()查询符合条件的单一记录filter()查询符合条件的多条记录exclude()查询符合条件之外的全部记录…查询方法all()方法用法:MyModel.objects.all()作用:查询MyModel实体中所有的数据等同于selec
- Go 语言学习之 goroutine 和 channel
goroutine当一个go程序运行时,调用main函数入口的goroutine是主goroutine,我们还可以使用关键字go创建新的goroutine。在Go语言中,创建goroutine的语法很简单,只需要在函数或方法调用前加上go关键字。channelchannel是可以让一个goroutine发送特定的值到另一个goroutine的通信机制,Go官方鼓励使用CSP并发编程风格,以通信代替
- Java面向对象基础(多态)04--Java基础学习08
文章属于个人知识点总结名字:不懂技术的计科毕业生来源:尚学堂高棋老师的Java300课1、多态的定义多态指为不同数据类型的实体提供统一的接口。多态类型可以将自身所支持的操作套用到其它类型的值上。多态是指同一方法调用,由于对象不同可能会有不同的行为。现实生活中,同一方法具体实现会完全不同。2、多态的要点①多态是方法的多态,不是属性的多态(多态与属性无关)。②多态的存在有三个必要条件:继承、方法的重写
- spring--事务失效原因
你我约定有三
数据库sqljava后端spring
✅一、事务失效的常见原因及对应场景1.方法不是public的✅原因:SpringAOP默认使用基于代理的方式(JDK或CGLIB),只能拦截public方法。❌错误示例:@TransactionalvoidsaveData(){//非public,事务无效...}✅正确写法:@TransactionalpublicvoidsaveData(){...}2.同类中方法调用,导致自调用(SelfInv
- 关于事务的传播方式
ruan114514
java数据库开发语言mysql
传播行为定义了当一个事务方法被另一个事务方法调用时,事务应该如何进行。它决定了新方法是加入已有的“事务组”,还是自己单开一个“新项目组”,或者干脆不参与“项目组”(事务)。核心传播行为详解与示例:假设我们有两个服务方法:ServiceA.methodA()和ServiceB.methodB()。methodA内部调用了methodB。1.REQUIRED(默认)-“一起干”或“开新组”含义:如果当
- Python练习(6)Python面向对象编程三大特性:封装、继承与多态的15道实战练习题(含答案与深度解析)
一个天蝎座白勺程序猿
python开发语言
目录引言封装篇(5题)练习1:银行账户安全封装练习2:属性装饰器控制练习3:私有方法调用练习4:受保护属性继承练习5:类属性封装继承篇(5题)练习6:单继承与方法重写练习7:多继承与MRO练习8:抽象基类实现练习9:Mixin模式练习10:super()函数应用多态篇(5题)练习11:接口多态练习12:鸭子类型练习13:多态与异常处理练习14:多态与类型检查练习15:多态与装饰器总结Python爬
- AOP在哪些场景下可能会失效?
爱学习的小熊猫_
javaspringspringbootAOP事务
AOP一般在哪些场景下可能会失效?定义:AOP动态代理在Spring中主要通过JDK动态代理(基于接口)和CGLIB代理(基于继承)实现,但在以下场景中可能失效,导致拦截失败:一、失效场景及原理分析1.类内部方法调用(最常见)场景:@ServicepublicclassUserService{publicvoidmethodA(){methodB();//内部调用→AOP失效}@Transacti
- dubbo与zookeeper
中庸逍遥
1.什么是DubboDubbo是一款高性能、轻量级的开源JavaRPC框架,它提供了三大核心能力:面向接口的远程方法调用,智能容错和负载均衡,以及服务自动注册和发现。1.1架构1.2节点角色说明:Provider:暴露服务的服务提供方(生产者)Consumer:调用远程服务的服务消费方(消费者)Registry:服务注册与发现的注册中心(例如:zookeeper)Monitor:统计服务的调用次数
- 24.park和unpark方法
卷土重来…
java并发编程java
1.park方法可以暂停线程,线程状态为wait。2.unpark方法可以恢复线程,线程状态为runnable。3.LockSupport的静态方法。4.park和unpark方法调用不分先后,unpark先调用,park后执行也可以恢复线程。publicclassParkDemo{publicstaticvoidmain(String[]args){Threadt1=newThread(()->
- Go语言中defer语句的含义,它使用的场景,写出的示例。
小高Baby@
golang开发语言后端
Go语言的defer语句用于延迟执行某一个函数或方法调用,直到包含它的函数执行完毕(无论正常返回还是发生异常)。它的应用场景一般在:资源释放,错误处理,日志记录packagemainimport("fmt""os")funcmain(){file,err:=os.Open("example.txt")iferr!=nil{fmt.Println("文件打开失败:",err)return}//延迟关
- 前端学习 vben 之 axios interceptors
aha-凯心
vbenadmin启航前端学习
前端学习vben之axiosinterceptorsinterceptor拦截器,是一种软件设计模式,核心思想就是在程序执行的特定阶段(如请求发送前,响应返回后,方法调用前后等)自动插入自定义逻辑。实现对核心流程的“拦截”和增强。它本质上是一种面向切面编程(AOP)的具体实现,用于解耦横跨多个模块的通用功能(如日志、认证、错误处理)。axios中的interceptoraxios中实现了inter
- Spring事务失效的八大核心原因与深度解析
fjkxyl
spring数据库网络
一、事务失效的本质原理Spring事务管理基于动态代理机制实现,通过AOP拦截带有@Transactional注解的方法,在方法执行前后开启/提交事务。当代理链路被破坏或事务控制要素缺失时,就会导致事务失效。图1展示了正常事务拦截流程:客户端事务代理目标对象数据库方法调用begintransaction调用实际方法执行SQL返回结果commitrollbackalt[执行成功][执行失败]最终响应
- Flutter 与 Android 的互通几种方式
小李飞飞砖
flutterandroid
Flutter与Android的互通主要通过以下几种方式实现,每种方式适用于不同的场景:1.平台通道(PlatformChannels)Flutter与原生Android代码通信的核心方式,支持双向调用。类型:MethodChannel:双向方法调用(最常用)EventChannel:用于原生向Flutter发送事件流(如传感器数据)BasicMessageChannel:简单的消息传递(较少使用
- Spring Data JPA基本方法调用规律
goxingman
JPAwindows
一、命名规则核心逻辑派生方法名由三部分组成:findBy+属性名+条件,其中:前缀(固定关键词):findBy、deleteBy、countBy、existsBy等。属性名:实体类的字段名(需严格匹配驼峰命名)。条件:可选,如GreaterThan、LessThan、Like等。示例://方法名=前缀+属性名+条件ListfindByAgeGreaterThan(intage);//查询年龄大于a
- SpringBoot EhCache 缓存
一只帆記
JavaSpringBootspringboot缓存后端
一、EhCache核心原理层级存储堆内缓存(Heap):高速访问,受JVM内存限制堆外缓存(Off-Heap):突破JVM堆大小限制(直接内存)磁盘存储(Disk):持久化超大缓存集群存储(RMI/JGroups):分布式节点同步(需企业版)数据过期策略LRU(最近最少使用)LFU(最不经常使用)FIFO(先进先出)基于创建/访问时间的TTL(生存时间)缓存工作流程是否方法调用缓存是否存在?返回缓
- Arthas从入门到精通
编程界的彭于晏qaq
线上问题排查工具java
Arthas从入门到精通一、Arthas入门:从安装到第一个命令1.1Arthas简介Arthas(阿尔萨斯)是阿里巴巴开源的Java诊断工具,支持JDK6+,可在不修改代码、不重启服务的情况下,实时监控JVM状态、追踪方法调用、排查性能问题,被誉为“Java线上问题排查的瑞士军刀”。其核心优势在于非侵入式诊断,广泛应用于开发、测试及生产环境,尤其适合解决分布式系统中的疑难问题。1.2安装步骤Ar
- jvm架构原理剖析篇
teayear
jvm架构
简单题(5道)考查内容:JVM运行时数据区域题干:Java虚拟机栈的主要作用是?A.存储对象实例B.存储方法调用和局部变量C.存储静态字段D.存储字节码指令正确答案:B解析:虚拟机栈用于存储方法调用帧(包括局部变量表和操作数栈),对象实例存储在堆中,静态字段存储在方法区,字节码指令存储在方法区。考查内容:类加载机制题干:以下哪个不是类加载的阶段?A.加载B.验证C.编译D.初始化正确答案:C解析:
- Android Binder与AIDL与Service使用案例及分析
曹小满2579
Android基础androidbinderAndroidIPC
水一篇以前写的文章Binder是Android内置的一种比较高效的跨进程机制,它很复杂,也很好用,可以让我们像调用普通方法那样完成跨进程式方法调用和数据传递。我们现在只需要知道它比较复杂以及怎么使用即可。ALDL全名AndroidinterfaceDefinitionLanguage,是Android官方提供的简化Binder开发的工具,适用于Java、Kotlin开发。所以很明显了,ALDL是小
- Java基础:Java运行原理
1024de小shen
Java基础java
文章目录一、Java运行原理二、Java虚拟机2.1JVM概念2.2JVM体系结构2.2.1ClassLoader:类装载器2.2.2执行引擎2.2.3运行时数据区三、Java线程四、Java方法调用五、Java字节码执行一、Java运行原理我们都知道,机器只能识别0和1,那么程序是如何在机器上运行的呢?当我们在IDEA等开发工具上编写Java代码,经过构建(javac.exe编译)后,会生成字节
- Sentinel
sevevty-seven
sentinellinux服务器
一、Sentinel的核心概念Sentinel的设计围绕“流量治理”展开,以下是其核心概念:资源(Resource):资源是Sentinel的核心概念,可以是代码中的任意一段逻辑(如方法调用、接口、SQL查询等),也可以是服务或URL。每个资源都有唯一的名称(resourceName),Sentinel通过资源名称对其进行监控和控制。用户需要通过SentinelAPI(如SphU.entry(re
- 12、jvm运行期优化
很小心的小新
jvmjava笔记开发语言
运行期优化:jvm将执行状态分成五个层次(1)0层,解释执行(Inrerpreter)(2)1层,使用c1即时编译器编译执行(不带profiling)2层,使用c1即时编译器编译执行(带基本的prodiling)3层,使用c1即时编译器编译执行(带完全的profiling)4层,使用c2即时编译器编译执行profiling是指在运行过程中收集一些程序执行状态的数据,例如:方法调用次数,循环的回边次
- 【go从入门到精通】rpc和grpc的使用
前网易架构师-高司机
golang从入门到精通golangrpc开发语言golang从入门到精通go从入门到精通grpc
RPC简介远程过程调用(RemoteProcedureCall,RPC)是一个计算机通信协议该协议允许运行于一台计算机的程序调用另一台计算机的子程序,而程序员无需额外地为这个交互作用编程如果涉及的软件采用面向对象编程,那么远程过程调用亦可称作远程调用或远程方法调用RPC应用场景RPC的应用场景通常是在复杂的系统中,当单一应用无法承受高流量和复杂业务时,系统会被拆分成多个服务,这些服务可能需要部署在
- LambdaQueryWrapper中的方法报错
GoodStudyAndDayDayUp
java开发语言
1.错误的调用原因.eqIfPresent()是静态方法调用,内部也必须是静态方法,所以报错2.正确调用newLambdaQueryWrapperX()后面不能直接点:LambdaQueryWrapperXqueryWrapper=newLambdaQueryWrapperX<>();queryWrapper.eqIfPresent(HkConfigDO::getAppSecret,"全部").e
- Java:动态代理,InvocationHandler接口
十秒耿直拆包选手
JavaProgrammingupjava
简介Java动态代理的核心是一个接口InvocationHandler和一个类Proxy。其中InvocationHandler接口是proxy代理实例的调用处理程序实现的一个接口,每一个proxy代理实例都有一个关联的调用处理程序;在代理实例调用方法时,方法调用被编码分派到调用处理程序的invoke方法。官方对InvocationHandler接口的描述{@codeInvocationHandl
- Spring事务传播行为?失效情况?(详解)
事务传播行为指的就是当一个事务方法被另一个事务方法调用时这个事务方法应该如何进行。Spring中有七种事务的传播行为,分别是:required、requires_new、supports、not_supported、nested、mandatory、neverrequired如果当前没事务,就新建一个事务;如果已经存在事务,则加入该事务外围A方法,内围B、C方法requiredA方法无事务(外围方
- Java实现的简单双向Map,支持重复Value
superlxw1234
java双向map
关键字:Java双向Map、DualHashBidiMap
有个需求,需要根据即时修改Map结构中的Value值,比如,将Map中所有value=V1的记录改成value=V2,key保持不变。
数据量比较大,遍历Map性能太差,这就需要根据Value先找到Key,然后去修改。
即:既要根据Key找Value,又要根据Value
- PL/SQL触发器基础及例子
百合不是茶
oracle数据库触发器PL/SQL编程
触发器的简介;
触发器的定义就是说某个条件成立的时候,触发器里面所定义的语句就会被自动的执行。因此触发器不需要人为的去调用,也不能调用。触发器和过程函数类似 过程函数必须要调用,
一个表中最多只能有12个触发器类型的,触发器和过程函数相似 触发器不需要调用直接执行,
触发时间:指明触发器何时执行,该值可取:
before:表示在数据库动作之前触发
- [时空与探索]穿越时空的一些问题
comsci
问题
我们还没有进行过任何数学形式上的证明,仅仅是一个猜想.....
这个猜想就是; 任何有质量的物体(哪怕只有一微克)都不可能穿越时空,该物体强行穿越时空的时候,物体的质量会与时空粒子产生反应,物体会变成暗物质,也就是说,任何物体穿越时空会变成暗物质..(暗物质就我的理
- easy ui datagrid上移下移一行
商人shang
js上移下移easyuidatagrid
/**
* 向上移动一行
*
* @param dg
* @param row
*/
function moveupRow(dg, row) {
var datagrid = $(dg);
var index = datagrid.datagrid("getRowIndex", row);
if (isFirstRow(dg, row)) {
- Java反射
oloz
反射
本人菜鸟,今天恰好有时间,写写博客,总结复习一下java反射方面的知识,欢迎大家探讨交流学习指教
首先看看java中的Class
package demo;
public class ClassTest {
/*先了解java中的Class*/
public static void main(String[] args) {
//任何一个类都
- springMVC 使用JSR-303 Validation验证
杨白白
springmvc
JSR-303是一个数据验证的规范,但是spring并没有对其进行实现,Hibernate Validator是实现了这一规范的,通过此这个实现来讲SpringMVC对JSR-303的支持。
JSR-303的校验是基于注解的,首先要把这些注解标记在需要验证的实体类的属性上或是其对应的get方法上。
登录需要验证类
public class Login {
@NotEmpty
- log4j
香水浓
log4j
log4j.rootCategory=DEBUG, STDOUT, DAILYFILE, HTML, DATABASE
#log4j.rootCategory=DEBUG, STDOUT, DAILYFILE, ROLLINGFILE, HTML
#console
log4j.appender.STDOUT=org.apache.log4j.ConsoleAppender
log4
- 使用ajax和history.pushState无刷新改变页面URL
agevs
jquery框架Ajaxhtml5chrome
表现
如果你使用chrome或者firefox等浏览器访问本博客、github.com、plus.google.com等网站时,细心的你会发现页面之间的点击是通过ajax异步请求的,同时页面的URL发生了了改变。并且能够很好的支持浏览器前进和后退。
是什么有这么强大的功能呢?
HTML5里引用了新的API,history.pushState和history.replaceState,就是通过
- centos中文乱码
AILIKES
centosOSssh
一、CentOS系统访问 g.cn ,发现中文乱码。
于是用以前的方式:yum -y install fonts-chinese
CentOS系统安装后,还是不能显示中文字体。我使用 gedit 编辑源码,其中文注释也为乱码。
后来,终于找到以下方法可以解决,需要两个中文支持的包:
fonts-chinese-3.02-12.
- 触发器
baalwolf
触发器
触发器(trigger):监视某种情况,并触发某种操作。
触发器创建语法四要素:1.监视地点(table) 2.监视事件(insert/update/delete) 3.触发时间(after/before) 4.触发事件(insert/update/delete)
语法:
create trigger triggerName
after/before 
- JS正则表达式的i m g
bijian1013
JavaScript正则表达式
g:表示全局(global)模式,即模式将被应用于所有字符串,而非在发现第一个匹配项时立即停止。 i:表示不区分大小写(case-insensitive)模式,即在确定匹配项时忽略模式与字符串的大小写。 m:表示
- HTML5模式和Hashbang模式
bijian1013
JavaScriptAngularJSHashbang模式HTML5模式
我们可以用$locationProvider来配置$location服务(可以采用注入的方式,就像AngularJS中其他所有东西一样)。这里provider的两个参数很有意思,介绍如下。
html5Mode
一个布尔值,标识$location服务是否运行在HTML5模式下。
ha
- [Maven学习笔记六]Maven生命周期
bit1129
maven
从mvn test的输出开始说起
当我们在user-core中执行mvn test时,执行的输出如下:
/software/devsoftware/jdk1.7.0_55/bin/java -Dmaven.home=/software/devsoftware/apache-maven-3.2.1 -Dclassworlds.conf=/software/devs
- 【Hadoop七】基于Yarn的Hadoop Map Reduce容错
bit1129
hadoop
运行于Yarn的Map Reduce作业,可能发生失败的点包括
Task Failure
Application Master Failure
Node Manager Failure
Resource Manager Failure
1. Task Failure
任务执行过程中产生的异常和JVM的意外终止会汇报给Application Master。僵死的任务也会被A
- 记一次数据推送的异常解决端口解决
ronin47
记一次数据推送的异常解决
需求:从db获取数据然后推送到B
程序开发完成,上jboss,刚开始报了很多错,逐一解决,可最后显示连接不到数据库。机房的同事说可以ping 通。
自已画了个图,逐一排除,把linux 防火墙 和 setenforce 设置最低。
service iptables stop
- 巧用视错觉-UI更有趣
brotherlamp
UIui视频ui教程ui自学ui资料
我们每个人在生活中都曾感受过视错觉(optical illusion)的魅力。
视错觉现象是双眼跟我们开的一个玩笑,而我们往往还心甘情愿地接受我们看到的假象。其实不止如此,视觉错现象的背后还有一个重要的科学原理——格式塔原理。
格式塔原理解释了人们如何以视觉方式感觉物体,以及图像的结构,视角,大小等要素是如何影响我们的视觉的。
在下面这篇文章中,我们首先会简单介绍一下格式塔原理中的基本概念,
- 线段树-poj1177-N个矩形求边长(离散化+扫描线)
bylijinnan
数据结构算法线段树
package com.ljn.base;
import java.util.Arrays;
import java.util.Comparator;
import java.util.Set;
import java.util.TreeSet;
/**
* POJ 1177 (线段树+离散化+扫描线),题目链接为http://poj.org/problem?id=1177
- HTTP协议详解
chicony
http协议
引言
- Scala设计模式
chenchao051
设计模式scala
Scala设计模式
我的话: 在国外网站上看到一篇文章,里面详细描述了很多设计模式,并且用Java及Scala两种语言描述,清晰的让我们看到各种常规的设计模式,在Scala中是如何在语言特性层面直接支持的。基于文章很nice,我利用今天的空闲时间将其翻译,希望大家能一起学习,讨论。翻译
- 安装mysql
daizj
mysql安装
安装mysql
(1)删除linux上已经安装的mysql相关库信息。rpm -e xxxxxxx --nodeps (强制删除)
执行命令rpm -qa |grep mysql 检查是否删除干净
(2)执行命令 rpm -i MySQL-server-5.5.31-2.el
- HTTP状态码大全
dcj3sjt126com
http状态码
完整的 HTTP 1.1规范说明书来自于RFC 2616,你可以在http://www.talentdigger.cn/home/link.php?url=d3d3LnJmYy1lZGl0b3Iub3JnLw%3D%3D在线查阅。HTTP 1.1的状态码被标记为新特性,因为许多浏览器只支持 HTTP 1.0。你应只把状态码发送给支持 HTTP 1.1的客户端,支持协议版本可以通过调用request
- asihttprequest上传图片
dcj3sjt126com
ASIHTTPRequest
NSURL *url =@"yourURL";
ASIFormDataRequest*currentRequest =[ASIFormDataRequest requestWithURL:url];
[currentRequest setPostFormat:ASIMultipartFormDataPostFormat];[currentRequest se
- C语言中,关键字static的作用
e200702084
C++cC#
在C语言中,关键字static有三个明显的作用:
1)在函数体,局部的static变量。生存期为程序的整个生命周期,(它存活多长时间);作用域却在函数体内(它在什么地方能被访问(空间))。
一个被声明为静态的变量在这一函数被调用过程中维持其值不变。因为它分配在静态存储区,函数调用结束后并不释放单元,但是在其它的作用域的无法访问。当再次调用这个函数时,这个局部的静态变量还存活,而且用在它的访
- win7/8使用curl
geeksun
win7
1. WIN7/8下要使用curl,需要下载curl-7.20.0-win64-ssl-sspi.zip和Win64OpenSSL_Light-1_0_2d.exe。 下载地址:
http://curl.haxx.se/download.html 请选择不带SSL的版本,否则还需要安装SSL的支持包 2. 可以给Windows增加c
- Creating a Shared Repository; Users Sharing The Repository
hongtoushizi
git
转载自:
http://www.gitguys.com/topics/creating-a-shared-repository-users-sharing-the-repository/ Commands discussed in this section:
git init –bare
git clone
git remote
git pull
git p
- Java实现字符串反转的8种或9种方法
Josh_Persistence
异或反转递归反转二分交换反转java字符串反转栈反转
注:对于第7种使用异或的方式来实现字符串的反转,如果不太看得明白的,可以参照另一篇博客:
http://josh-persistence.iteye.com/blog/2205768
/**
*
*/
package com.wsheng.aggregator.algorithm.string;
import java.util.Stack;
/**
- 代码实现任意容量倒水问题
home198979
PHP算法倒水
形象化设计模式实战 HELLO!架构 redis命令源码解析
倒水问题:有两个杯子,一个A升,一个B升,水有无限多,现要求利用这两杯子装C
- Druid datasource
zhb8015
druid
推荐大家使用数据库连接池 DruidDataSource. http://code.alibabatech.com/wiki/display/Druid/DruidDataSource DruidDataSource经过阿里巴巴数百个应用一年多生产环境运行验证,稳定可靠。 它最重要的特点是:监控、扩展和性能。 下载和Maven配置看这里: http
- 两种启动监听器ApplicationListener和ServletContextListener
spjich
javaspring框架
引言:有时候需要在项目初始化的时候进行一系列工作,比如初始化一个线程池,初始化配置文件,初始化缓存等等,这时候就需要用到启动监听器,下面分别介绍一下两种常用的项目启动监听器
ServletContextListener
特点: 依赖于sevlet容器,需要配置web.xml
使用方法:
public class StartListener implements
- JavaScript Rounding Methods of the Math object
何不笑
JavaScriptMath
The next group of methods has to do with rounding decimal values into integers. Three methods — Math.ceil(), Math.floor(), and Math.round() — handle rounding in differen