Spring(二) 常用注解

Spring常用注解:

      用于创建对象:他们的作用就是和在xml配置文件中编写一个<bean>标签实现功能是一样的

      用于注入数据:他们作用和在xml中的<bean>标签中写一个properties标签作用是一样的

     用于改变作用范围:他们的作用集合在bean标签中使用scope属性属性实现功能是一样的

     和生命周期相关:作用和在<bean>标签中使用init-method和destory-method的作用是一样的

 

1、用于创建对象的:

       @Component:作用:用于把当前类对象存入Spring中,会把注解标识的类创建成一个对象,存入Spring中,

                                 属性:用于指定bean的id,当我们不写时,他的默认值是当前类名,且首字母改小写

       @Controller :一般用在表现层

      @Service:一般用在业务层

      @Repository:一般用在持久层

     以上注解地作用和@Component是一模一样的,他们三个是Spring框架为我们提供明确的三层使用注解,使我们的三层对象更加清晰。

 2、用于注入数据的:

      @Autowried:作用:按照类型注入,只要容器中有唯一一个bean对象类型和要注入的变量类型匹配,就可以注入成功用于改变作用范围的,他们的作用就和在bean标签中使用scop属性实现的功能是一样的,如果容器中没有人任何bean类型和要注入的变量类型匹配,则报错。如果IOC容器中有多个类型匹配时,首先按照类型圈定出匹配对象,然后会使用变量名称,在圈定出的两个里面继续查找,如果有一样的,也可以注入成功。

                            出现位置:可以是成员变量上,也可以是方法上。

                             在使用注解注入时,set方法就不是必须的(SpringIOC容器是一个map结构)

           那么就是两个bean相同时,改id

       @Qualifier:作用:按照类中注入的基础上再按照名称注入,它在给类成员注入时不单独使用,但是在给方法注入时可以

                           属性:value,用于指定注入bean的id

       @Resource:作用:直接按照bean的id注入,它可以独立使用

                             属性:name,用于指定bean的Id

            以上三个注解都只能注入其他bean类型的数据,而基本类型和String类型无法使用上述注解实现。 另外,集合类型的注入只能通过XML实现。

         @Value :作用:用于注入基本类型和String类型的数据

                          属性:Value,用于指定数据的值,它可以使用Spring中的SpEl(也就是spring的el表达式)

                           SpEl的写法:${表达式}

 

    用于改变作用域范围:

           Scope:用于指定bean作用范围

                    属性:

                             value:指定范围的取值,常用取值,singleton,prototype

                              注:多例对象销毁Spring是不负责的

   和生命周期相关:

             PreDestroy:作用,用于指定销毁方法

            PostConstruct:作用,用于指定初始化方法

      

              

       

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值