美文网首页SpringFramework
注解配置bean的引用

注解配置bean的引用

作者: 逗比寨主 | 来源:发表于2019-07-15 18:42 被阅读2次

    注解配置bean的引用

    1.AutowiredAnnotationBeanPostProcessor

    由component-scan自动注册该实例,并且可以自动装配具有@Autowired、@Resource和@Inject注解的属性

    @Autowired注解自动装配具有兼容类型的单个bean属性,可以用它注解(构造器、字段、方法),没有匹配的时候,Spring将会报错

    @Autowired
    private UserService userService;
    

    private UserService userService;
    
    @Autowired
    public void setUserService(UserService userService) {
        this.userService = userService;
    }
    

    @Autowired(required = false) required为false时,标志该注解的属性运行不被设置。

    有多个同类型对象的时候,可以根据名称来装配对象

    如下,属性名称和注解后的value名称是一致的

    @Autowired
    private UserRepository userRepository;
    
    @Repository(value = "userRepository")
    public class UserJdbcRepository implements UserRepository {
        @Override
        public void save() {
            System.out.println("UserJdbcRepository Save user");
        }
    }
    

    如果不设置value值,spring会提示装配错误

    或者使用@Qualifier("userRepositoryImpl")注解,标识属性类型

    @Autowired
    @Qualifier("userRepositoryImpl")
    private UserRepository userRepository;
    

    在方法参数中

    @Autowired
    public void setUserRepository(@Qualifier("userRepositoryImpl") UserRepository userRepository) {
        this.userRepository = userRepository;
    }
    

    相关文章

      网友评论

        本文标题:注解配置bean的引用

        本文链接:https://www.haomeiwen.com/subject/yysokctx.html