spring_2
Spring Bean的作用域1. singleton: Spring的默认作用域,容器里拥有唯一的Bean实例,适合无状态的Bean.2. prototype: 针对每个getBean请求, 容器都会创建一个Bean对象,适合有状态的Bean.3. request: 会为每个Http请求创建一 ...
spring_1
这篇博客写得稀烂,大家谨慎观看 你了解Spring IOC吗? IOC(Inversion Of Control): 控制反转 它是Sprig Core最核心的部分,是Spring家族的基本. IOC是指由spring来负责控制对象的生命周期和对象间的关系. IOC不能算是一种技术,应该当做 ...
java基础_3
J.U.C知识点梳理 java.util.concurrent包: 提供了并发编程的解决方案, J.U.C包里有两大核心: CAS(compare and swap)是java.util.concurrent.atomic包的基础. AQS(AbstractQueuedSynchronize ...
java基础_2
集合之List和Set集合之MapHashMap hashmap是非线程安全的,所以效率比较高. Java8之前,hashmap底层是通过数组+链表实现的,如图所示:hashmap没有赋值之前,数组长度默认为16,在该数组中每个位置存储的都是链表的头结点.通过hash(key.hashCod ...
java基础_1
java异常java的异常处理机制主要回答了三个问题:1. What: 即异常类型,回答了什么异常类型会被抛出.2. Where: 即异常堆栈跟踪,回答了在哪儿抛出的异常.3. Why: 即异常信息,回答了为什么会抛出该异常.java的异常体系由图可知:Throwable是java异常体系的顶层 ...
多线程面试_13
java线程池 在web开发中,服务器需要接受并处理请求,所以会为一个请求来分配一个线程来进行处理,如果并发的请求数量非常多,但每个线程执行的时间很短,这样就会频繁的创建和销毁线程,这样会大大降低系统的效率,所以,就出现了线程池来重复利用线程. 利用位于J.U.C包下面Executors类创建 ...
多线程面试_12
CAS(Compare and Swap) Java 平台中的锁包括内部锁(排它锁)( Intrinsic Lock )和显式锁 ( Explicit Lock )。内部锁是通过synchronized关键字实现的;显式锁是通过java.concurrent.locks.Lock接口的实现类 ...
多线程面试_11
java内存模型JMM java内存模型(Java Memory Model,简称JMM) 本身是一种抽象的概念,并不真实存在,它描述的是一组规范或规则,通过这组规范定义了程序中各个变量(包括实例字段,静态字段和构成数组对象的元素的访问方式). 同时我们知道,jvm运行程序的实体是线程,而每个 ...
多线程面试_10
ReentrantLock这个东西,emm,我没怎么整明白,所以就没怎么写 ReentrantLock(再入锁)java5之前,synchronized是仅有的同步手段,java5开始就提供了ReentrantLock,其语义与synchronized基本相同 - 它位于java.util.c ...