spring常用注解的使用

spring常用注解的使用

1、用于创建对象

相当于:

1.1、@Component

  • 作用:把资源让spring来管理,相当于在xml中配置一个bean。
  • 属性
    • value:指定bean的id;如果不指定value属性,默认bean的id是当前类的类名,首字母小写。

1.2、@Controller、@Service、@Repository

他们三个注解都是针对@Component的衍生注解,他们的作用及属性都是一模一样的。只不过是提供了更加明确的语义化。

  • @Controller:一般用于表现层的注解。
  • @Service:一般用于业务层的注解。
  • @Repository:一般用于持久层的注解。

细节:如果注解中有且只有一个属性要赋值时,且名称是value,value在赋值是可以不写

2、用于注入数据

相当于:

2.1、@Autowired

  • 作用
    • 自动按照类型注入。当使用注解注入属性时,set方法可以省略。它只能注入其他bean类型。
    • 当有多个类型匹配时,使用要注入的对象变量名称作为bean的id,在spring容器查找,找到了也可以注入成功,找不到就报错。

2.2、@Qualifier

  • 作用

    • 在自动按照类型注入的基础之上,再按照Bean的id注入。
    • 它在给字段注入时不能独立使用,必须和@Autowire一起使用;但是给方法参数注入时,可以独立使用。
  • 属性

    • value:指定bean的id。

2.3、@Resource

  • 作用:直接按照Bean的id注入。它也只能注入其他bean类型。

  • 属性

    • name:指定bean的id。

2.4、@Value

  • 作用:注入基本数据类型和String类型数据的

  • 属性

    • value:用于指定值

3、用于改变作用范围

相当于:

3.1、@Scope

  • 作用:指定bean的作用范围。
  • 属性
    • value:指定范围的值
      • 取值:singleton prototype request session globalsession

4、和生命周期相关

相当于:

4.1@PostConstruct

  • 作用:用于指定初始化方法。

4.2、@PreDestroy

  • 作用:用于指定销毁方法。
记得快乐
原文地址:https://www.cnblogs.com/Y-wee/p/13819178.html