• Spring——注解


    在Spring4之后,要使用注解开发,必须要保证aop的包的导入了

    使用注解需要导入context约束,增加注解的支持。

    <?xml version="1.0" encoding="UTF-8"?><beans xmlns="http://www.springframework.org/schema/beans"       xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"       xmlns:context="http://www.springframework.org/schema/context"       xsi:schemaLocation="http://www.springframework.org/schema/beans       http://www.springframework.org/schema/beans/spring-beans.xsd       http://www.springframework.org/schema/context       http://www.springframework.org/schema/context/spring-context.xsd">​    ​    <context:annotation-config/></beans>

    1、属性的注入

    package com.ly.pojo;
    
    import org.springframework.beans.factory.annotation.Value;
    import org.springframework.stereotype.Component;
    
    //等价于<bean id="user" class="com.ly.pojo.User"/>  在IOC容器中注册
    //component 组件
    @Component
    public class User {
        //相当于<property name="name" value="凌云"/>
        @Value("凌云")
        public String name ;
    
        public String getName() {
            return name;
        }
    
        public void setName(String name) {
            this.name = name;
        }
    }

    2、衍生的注解

    @Component有几个衍生的注解,我们在web开发中,会按照mvc三层架构!

    • dao【@Repository】

    • service【@Service】

    • controller【@Controller】

      这四个注解功能都是一样的,都是代表将某个类注册到Spring中装配!

    3、自动装配

    @Autowired:自动装配通过类型,名字
        如果Autowired不能唯一自动的装配上属性,则需要Qualifier(value="")
    @Nullable  字段标记了这个注释,说明这个字段可以为null
    @Resource :自动装配通过名字类型

    4、作用域

    package com.ly.pojo;
    
    import org.springframework.beans.factory.annotation.Value;
    import org.springframework.context.annotation.Scope;
    import org.springframework.stereotype.Component;
    
    //等价于<bean id="user" class="com.ly.pojo.User"/>  在IOC容器中注册
    //component 组件
    @Component
    @Scope("singleton")
    public class User {
        //相当于<property name="name" value="凌云"/>
        @Value("凌云")
        public String name ;
    
        public void setName(String name) {
            this.name = name;
        }
    }

    5、小结

    xml与注解:

    • xml更加万能,适用于任何场合!维护简单方便

    • 注解不是自己的类使用不了,维护相对复杂!

    最佳实践:

    • xml用来管理bean

    • 注解只负责完成属性的注入;

    • 我们在使用的过程中,只需要注意一个问题:要让注解生效,就需要开启注解的支持。

     <!--指定要扫描的包,这个包下的注解就会生效-->
        <context:component-scan base-package="com.ly.pojo"/>
        <context:annotation-config/>



  • 相关阅读:
    git的使用
    免安装版mySQL的安装及配置
    Eclipse中安装freemarker插件
    freemarker配置
    Matlab机器人工具箱安装教程
    书籍推荐
    电影推荐
    自走棋地精猎玩法
    wineqq中接收文件的查看与移动
    windows和linux键值表
  • 原文地址:https://www.cnblogs.com/moxihuishou/p/15163887.html
Copyright © 2020-2023  润新知