8.Spring-“零配置支持”

1.使用Spring的注解

作用:可以简化applicationContext.xml的配置(不能完全替代,bean后处理器,和容器后处理器通常还是写在配置文件当中)

2.步骤:

a.导入spring-aop的jar包

b.配置context相关的约束

c.在applicationContext当中 加入自动扫描的包路径

d.在相关的java类上 使用合适的注解

  • @Component:作用是替代配置里的<bean class="" id=""> 默认情况下 bean的名字为 类名(首字母小写) @Component("bean名字")

  • @Controller:专门用于Web层的bean的注解

  • @Service:专门用于Service层的bean的注解

  • @Repository:专门用于Dao层的bean的注解

  • @Scope:用于标注bean的作用域 可选值:singleton 单例 prototype多例

  • @Value:用于对常量属性进行注入(可以放在属性上 set方法的上方 构造方法)

  • @Resource:用于依赖注入,注入的bean的名字 默认和对应的属性名一样 @Resource(name="bean名字")来进行注入 使用@Resource进行注入,实现原理反射机制,所以即使属性没有set方法 或者构造方法,依然可以注入成功. 对于@Resource注解,如果没有指定注入的bean的名字,并且存在两个相同接口(类型)的bean,则会抛出异常。

  • @Autowired:用于依赖注入,自动装配,当Spring容器中有 相同类型的bean的时候,会自动的注入到私有属性,如果容器里存在两个相同接口(类型的)bean 则会抛出异常.

@Autowired用于byType方式的自动装配,如果要指定Id进行装配 需要加上@Qualifier(beanId) 注解

  • @PostConstruct:用于标注 初始化之前的 方法相当于配置中的 init-method

  • @PreDestory:用于标注 销毁之前的方法,相当于配置中的 destroy-method

阅读剩余
THE END