基于注解的配置

Spring容器启动三要素:Bean的定义,Bean的实现,Spring容器

 

在基于xml文档配置bean时,Bean的定义与实现是分开的

而采用注解配置时,Bean的定义通过在Bean的实现类上标注注解实现。

 

  1. 使用注解定义Bean

@Component 用于任何层次

@Service 用于对Service实现类进行标注

@Controller 用于对Controller实现类标注

@Repository 用于对Dao实现类进行标注

 

使用这四个注解标注POJO 可以使类被Spring识别,并将其转换成Bean。

作用等同于<bean id=""class=""/>

还可以通过注解的value属性指定Bean的名称。

 

  1. 使用<context:compoment-scan base-package=""/>Spring会扫描指定的包,并识别其中的注解信息。

 

  1. 装配Bean

对Bean 属性或者方法参数的自动装配,仅限于该属性或参数的类型是对象,Spring会在容器中查找匹配的Ban进行注入,对于基本数据类型,不能实现自动装配,仍需要通过xml文档进行依赖注入

 

 

@Autowired 实现bean的依赖注入,默认为按类型匹配

@Autowired(required=false);如果找不到符合要求的Bean不会抛出异常

@Qulifier(““)用于指定注入的名称

 

@Autowired既可以标注属性,也可以对方法及方法的参数进行标注。

 

如果对类中集合类型(List,Set,Map)的属性或方法的参数进行@Autowired标注,Spring会将容器中所有类型匹配的Bean注入进来。

 

 

对于@Autowired声明的数组、集合类型,spring并不是根据beanName去找容器中对应的bean,而是把容器中所有类型与集合(数组)中元素类型相同的bean构造出一个对应集合,注入到目标bean中。

注入集合类型不要使用@Autowired,而使用@Resource注解。同时Spring官方也是不推荐使用@Autowired的。

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值