默认作用域是 Sigleton,多线程访问同一个 Bean 时会存在线程不安全标题启动初始化
保障线程安全方法:
- 在 Bean对象中尽量避免界说可变的成员变量(不太实际)
- 在类中界说一个 ThreadLocal 成员变量,将需要的可变成员变量保存在 ThreadLocal 中
在 Bean 创建期间由 Spring 调用的初始化方法InitializingBean:
- 利用:将 @PostConstruct 注解添加到方法上就行
实现 InitializingBean 接口,让 Spring 调用某一个初始化方法Controller 和 Service 是否线程安全的
欢迎光临 ToB企服应用市场:ToB评测及商务社交产业平台 (https://dis.qidao123.com/) | Powered by Discuz! X3.4 |