Spring-IOC注解

注解主要的目的就是实现零XML配置。
一:自动扫描装配Bean。
spring为我们引入了组件自动扫描机制,它可以在类路径底下寻找标注了@Component、@Service、@Controller、@Repository注解的类,并把这些类纳入进spring容器中管理。它的作用和在xml文件中使用bean节点配置组件是一样的。
1)@Component 将java类标记成一个Spring Bean组件。

2)@Service  将业务层实现类标记成一个Spring Bean组件。

3)@Controller  将表现层类标记成一个Spring Bean组件。

4)@Repository 将一个持久层实现类标记成一个Spring Bean组件。

均拥有value属性,可以取名字;如果没有取名字,默认为类名首字母小写。

二:作用域用scope来指定

用来指定bean的作用域

singleton---单例  只创建一个对象。

prototype---原型  想创建多少个就创建多少了。

request---针对Web项目,不同的请求创建单独的Bean对象,同一个请求共享一个Bean。

session---针对Web项目,不同的会话创建单独的Bean对象,同一个会话共享一个Bean。

三:自动装配(@Autowired)与精确装配

@Autowired注解是按类型装配依赖对象,默认情况下它要求依赖对象必须存在,如果允许null值,可以设置它required属性为false。

1、配置在属性上;

2、配置在set方法上;

3、配置在构造方法上。

 

自动装配中了解这两个就差不多了

1:byName在容器中寻找和需要自动装配的属性名相同的Bean

2:byType在容器中寻找和需要自动装配的属性类型相同的Bean

@Qualifier配合@Autowired使用。

把按类型配置变为按名称匹配

 1、配置在属性上;

2、配置在set方法上;

3、配置在构造方法的参数上。

@Resource  (这个注解是最强的)

@Resource注解默认按名称装配。名称可以通过name属性指定,如果没有指定name属性,默认取属性的名称作为bean名称寻找依赖对象。

注意:如果没有指定name属性,并且按照默认的名称找不到依赖对象时,@Resource会回退到按类型装配。但一旦指定了name属性,就只能按名称装配了。

1、配置在属性上;

2、配置在set方法上。

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值