面试总结
一:Spring相关面试知识点
1)Spring Bean的生命周期
答:大致可以分为五个阶段,分别是创建前准备,创建实例化,依赖注入,容器缓存,和销毁实例这样一些阶段
创建前准备~
2)Spring的Bean是线程安全的吗?
答:本身不是线程安全,Spring除了内置的bean,自己声明的bean通常会配置一下内容,比如:class(全类名),id(也就是id的唯一标识),scope(作用域),lazy-init(是否延时加载)
Spring Bean的作用域:prototype(多例Bean,每次getBean的时候都会创建一个新的对象),singeton(单例Bean,容器只会存在一个全局共享的实例)
有状态的单例Bean才会存在线程安全问题。
处理有状态的单例bean有三种方案:1将singleton改为prototype。2避免定义可变的成员变量。3可变成员变量保存在threadlocal。
3&#x