基于注解进行Bean的自动装配

可以使用@Autowired注解进行bean的自动装配,Spring会在IOC容器中自动找到符合要求的bean,若找不到会报异常,设置required属性为false,自动装配的bean可以为空。

当有多个同一类型的bean的时候,自动装配时:

1.把bean的名称和要装配的变量的名称保持一致,IOC容器会优先装配同名的bean

2.可以通过@Qualifier来指定要自动装配的bean的名字

@Qualifier可以放在方法前面,也可以放在变量前

package com.ustc.yi.annotation.service;

import com.ustc.yi.annotation.repository.UserRepository;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.stereotype.Service;

/**
 * Created by Yi on 2019/5/27.
 */
@Service
public class UserService {

    private UserRepository userRepository;

    @Autowired(required = false)
    //@Qualifier指定自动装载哪一个bean
    //@Qualifier("userJdbcRepository")
    public void setUserRepository(@Qualifier("userJdbcRepository")UserRepository userRepository) {
        this.userRepository = userRepository;
    }

    public void add(){
        System.out.println("UserService add...");
        userRepository.save();
    }
}

 

你可能感兴趣的:(Spring)