![](https://img-blog.csdnimg.cn/20201014180756927.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
spring
zhangh9172
生活不止眼前的苟且!
展开
-
spring常见问题
1、Spring是如何创建一个Bean对象的? 2、什么是单例池?作用是什么? 一个用来存放bean对象的Map集合,Map的key为bean的名字,value为完成实例化的Bean 3、Bean对象和普通对象的区别是什么? 4、依赖注入是怎么实现的? 5、@PostConstruct注解是如何工作的? 6、Bean的实例化和初始化的区别是什么? 实例化: 初始化: 7、推断构造方法是什么意思? 推断构造方法: AbstractAutowireCapableBeanFactory. 1)applicatio原创 2022-04-26 18:57:47 · 56 阅读 · 0 评论 -
Spring问题学习
1、Spring框架中的单例Bean是线程安全的吗? Spring中的Bean对象默认是单例的,框架并没有对Bean进行多线程封装处理。 如果Bean是有状态的,那么需要开发人员自己来保证线程安全,最简单的方法就是改变bean的作用域,把singleton改成prototype,这样每次请求就相当于创建对象来保证线程的安全。 有状态就是有数据存储的功能。 在使用的时候,不要在bean中声明任何有状态的实例变量和类变量,如果有可以使用ThreaLocal把变量变成线程私有,如果需要多个线程共享,则需要锁来实原创 2021-10-25 10:21:19 · 98 阅读 · 0 评论 -
spring事务什么时候失效?什么时候不会进行回滚?
spring事务失效: 1、访问权限问题 非public权限 2、方法用final修饰 spring事务基于AOP,方法被final修饰后不能被重写 3、方法内部使用 public void add(Dto dto){ insert(dto); update(dto); } @Transtional() public void update(){} update相当于this调用,不会被重写 4、未被spring管理 5、多线程调用 spring的事务是在一个连接中,而连接是存在Thre原创 2021-10-25 09:40:02 · 559 阅读 · 0 评论