首页 > 编程语言 > 详细

《spring》之注解

时间:2021-01-22 22:39:46      阅读:41      评论:0      收藏:0      [点我收藏+]


单例 bean 存在线程问题,主要是因为当多个线程操作同一个对象的时候,对这个对象的成员变量的
写操作会存在线程安全问题。

常见的有两种解决办法:

在Bean对象中尽量避免定义可变的成员变量(不太现实)。

在类中定义一个ThreadLocal成员变量,将需要的可变成员变量保存在 ThreadLocal 中。

 

 

@Autowired为Spring提供的注解,需要导入包
org.springframework.beans.factory.annotation.Autowired;
只按照byType注入。
@Autowired注解是按照类型(byType)装配依赖对象,默认情况下它要求依赖对象必须存在,
如果允许null值,可以设置它的required属性为false。
如果我们想使用按照名称(byName)来装配,可以结合@Qualifier注解一起使用。

 


@Resource默认按照ByName自动注入,由J2EE提供,需要导入包javax.annotation.Resource。
@Resource有两个重要的属性:name和type,
如果使用name属性,则使用byName的自动注入策略,
而使用type属性时则使用byType自动注入策略。
如果既不制定name也不制定type属性,这时将通过反射机制使用byName自动注入策略。

 

 

 

1.表明当前类是一个配置类,是方法bean的源

3.将@Con?guration配置的AppCon?g由普通类型转变为cglib代理类型,后会生成cglib代理对象,通
过代理对象的方法拦截器,
  可以解决AppCon?g内部方法bean之间发生依赖调用的时候从容器中去获取,避免了多例的出现

 

 

《spring》之注解

原文:https://www.cnblogs.com/zrzct/p/14315480.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!