基于@Autowired注解完成注入的方式
@Autowired注解用于属性上生成set方法完成注入
@Autowired用于set方法上面完成赋值注入
UserDao userDao;
//生成set方法注入
public void setUserDao(UserDao userDao) {
this.userDao = userDao;
}
private
//生成set方法完成注入
private UserService userService;
public void setUserService(UserService userService) {
this.userService = userService;
}
@Autowired用于构造方法上完成注入
@Autowired用于构造器上完成注入赋值
private UserDao userDao;
@Autowired
public UserServiceImpl(UserDao userDao) {
this.userDao = userDao;
}
private UserService userService;
@Autowired
public UserController(UserService userService) {
this.userService=userService;
}
@Autowired形参完成注入
public UserServiceImpl(@Autowired UserDao userDao) {
this.userDao = userDao;
}
//形参注入
public UserController(@Autowired UserService userService) {
this.userService = userService;
}
总结:
@Autowired的作用:
1.用于属性上完成注入
2.用于set方法上完成注入
3.用于构造方法上完成注入
4形参完成注入