Spring_IOC容器:@Autowired,@Qualifier,@Resource,@Value(Bean管理)

1.基于注解方式实现属性注入

@Autowired:根据属性类型进行自动装配

第一步:把service和dao对象创建,在service和dao类添加创建对象注解

第二步:在service注入dao对象,在service类添加dao类型属性,在属性上面使用注解

@Service
public class UserService {
    //定义dao类型的属性
    //不需要添加set方法
    //添加注入属性注解
    @Autowired   //根据类型进行注入
    private UserDao userDao;
    public void add(){
        System.out.println("service add ......");
        userDao.add();
    }
}

 

@Qualifier:根据属性名称进行注入

这个@Qualifier注解的使用,要和上面的@Autowired一起使用

@Service
public class UserService {
    //定义dao类型的属性
    //不需要添加set方法
    //添加注入属性注解
    @Autowired   //根据类型进行注入
    @Qualifier(value = "userDaoImpl")  //根据名称进行注入
    private UserDao userDao;
    public void add(){
        System.out.println("service add ......");
        userDao.add();
    }
}
@Repository(value = "userDaoImpl1")
public class UserDaoImpl implements UserDao{
    @Override
    public void add() {
        System.out.println("add.............");
    }
}

 

@Resource:可以根据类型注入,可以根据名称注入

java扩展包里面的,jdk11已移除

    @Resourse  //根据类型进行注入
    @Resourse(name="userDaoImpl")  //根据名称进行注入

 

@Value:注入普通类型属性

    @Value(value = "abc")
    private  String name;

 

阅读剩余
THE END