码迷,mamicode.com
首页 > 编程语言 > 详细

基于注解配置spring

时间:2017-08-15 18:58:20      阅读:150      评论:0      收藏:0      [点我收藏+]

标签:let   容器   配置   stc   3.2   single   调用   epo   参数   

1 对 bean 的标注基于注解方式有3个注解

  • @Component
  • @Repository 对DAO类进行标注
  • @Service 对Service类进行标注
  • @Controller  对Controller类进行标注

2 想要 spring 获得基于注解的bean 需要配置 <context:component-scan /> 进行扫描,并从注解中获得配置信息。

 

3 自动装配 bean ,使用 @Autowired 注解实现 Bean 的依赖注入。@Autowired 默认按照类型匹配 byType 的方式在容器中查找匹配的bean。当且仅有一个匹配的 bean 时,spring 将其注入到

@Autowired 标注的变量中。

如果在Spring启动时没有一个和标注变量类型匹配的 bean ,则会抛出 NoSuchBeanDefinitionException 异常,如果希望 Spring 即使找不到匹配的 bean 也不要抛出异常,可以使用

@Autowired(required=false) 进行标注

 

3.2 如果容器中有一个以上匹配的 bean ,则可以通过使用@Qualifier 注解限定 bean 名称

 

3.3 @Autowired 可以对类方法进行标注,如果方法有多个入参数,默认情况下,Spring 将自动选择匹配入参类型的 bean 进行注入,spring 允许对方法入参标注 @Qualifier 以指定

注入 bean 的名称

说明:虽然spring 支持属性和方法标注 @Autowired ,但是推荐使用方法上注入,方便以后的单元测试。因为标注在私有属性中很难用编程方式设置属性值

 

3.4 延迟依赖注入,通过使用 @Lazy 注解的bean , 不会立即注入,而是会延迟到调用此属性的时候才会注入属性值。

@Lazy 必须注解和 bean 标注同时使用

 

4 @Scope 用于指定 bean 的作用域范围,singleton,prototype。使用<bean> 配置时可以通过 init-method 和 destroy-method 属性指定 bean 的初始化及销毁前执行的方法。

相应的注解方法是通过 @PostControst 和 @PreDestroy, 在bean 中通过这两个标签指定 init-method 和 destroy-method 方法

 

 

基于注解配置spring

标签:let   容器   配置   stc   3.2   single   调用   epo   参数   

原文地址:http://www.cnblogs.com/zhaopengcheng/p/7366549.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!