注解开发-依赖注入
注解开发-依赖注入
-
使用
@Autowired
注解开启自动装配模式(按类型)@Service public class BookServiceImpl implements BookService { @Autowired @Qualifier("bookDao") //存在多个同类型的bean时,注入指定加载的bean private BookDao bookDao; /*@Autowired public void setBookDao(BookDao bookDao) { this.bookDao = bookDao; }*/ @Override public void save() { System.out.println("book service save..."); bookDao.save(); } }
-
注意:自动装配基于反射设计创建对象并暴力反射对应属性为私有属性初始化数据,因此无需提供setter方法
-
注意:自动装配建议使用无参构造方法创建对象(默认),如果不提供对应构造方法,请提供唯一的构造方法
-
使用@Qualifier注解开启指定名称装配bean
-
注意:@Qualifier注解无法单独使用,必须配合@Autowired注解使用
-
使用@Value实现简单类型注入
@Repository("bookDao") public class BookDaoImpl implements BookDao { @Value("100") private String name; @Override public void save() { System.out.println("book dao save..." + name); } }