Spring的注解

Posted zhaiwei

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Spring的注解相关的知识,希望对你有一定的参考价值。

spring的注解

类上的注解(将javaBean交给Spring容器的注解)

  如果注解没参数,则默认是类名,若有参数.则bean的名字为参数值

  1. @component 最原始的注解将javaBean交给Spring容器
  2. @service 将service(业务)层的类交给Spring容器管理
  3. @repository 将dao层的类交给Spring容器管理
  4. @controller 将控制层的类交给Spring容器管理

属性上的注解(为类中属性赋值(初始化)的注解)

  1. @value("")为基本数据类型(包含String)赋值 参数为必填项
  2. @AutoWrited[("参数")]为引用数据赋值,Spring容器会去找相对应的类型,若容器中有多个相同类型的值,需要传参数,spring容器根据参数的名字去找对应的实例对象,还可以用@Quailfier("")注解参数指定javaBean
  3. @Resource[(name="")]为引用数据赋值,Spring若是集合数据类型,需配合<util>属性使用.

    ①如果同时指定了name和type,则从Spring上下文中找到唯一匹配的bean进行装配,找不到则抛出异常。

    ②如果指定了name,则从上下文中查找名称(id)匹配的bean进行装配,找不到则抛出异常。

    ③如果指定了type,则从上下文中找到类似匹配的唯一bean进行装配,找不到或是找到多个,都会抛出异常。

    ④如果既没有指定name,又没有指定type,则自动按照byName方式进行装配;如果没有匹配,则回退为一个原始类型进行匹配,如果匹配则自动装配。

  4. @Bean为将工厂方法加入Spring容器 通常和@Configeuration 配合使用xp:  

  public Person getPerson(return new Person)  

  相当于在bean.xml中配置<bean id="getPerson" class="com.XXX.Person"/>

其他注解

  1. @scope("")为Bean指定作用域:request,session,singleton,prototype
  2. @PostConstruct作用在方法上,为Bean指定初始化方法
  3. @Perdestroy作用在方法上,为Bean指定销毁方法,只在scope=singleton时生效

以上是关于Spring的注解的主要内容,如果未能解决你的问题,请参考以下文章

Spring注解原理探索(一)

Spring 常用注解大全

spring使用注解,自动扫描类的时候怎么注入

Spring注解

Spring Boot实战笔记-- Spring高级话题(组合注解与元注解)

Spring 注解开发和测试