在spring项目中经常会用到的两个注解对于初学者会分不清该用哪个
首先@Bean和@Autowired是干啥的呢?
1、@Bean的注解就是替代我们之前配置spring的XML文件里面的的,毕竟按照配置文件的方式,在Java文件上用写代码写个bean,然后再去XML文件通过注册,来回操作太麻烦,直接在当前用到的直接写。
2、@Autowired自动装配指的就是使用将 Spring 容器中的 bean 自动的和我们需要这个 bean 的类组装在一起。
区别
@Bean 修饰的方法表示初始化一个对象并交由Spring IOC去管理,@Bean 只能和@Component @Repository @Controller @Service @Configration 配合使用.
@Autowired 可修饰变量和方法,用于完成自动装配(将需要的外部资源注入) 说白了,自动装配的前提你要先有才能装配,你直接引用资源就行,没有相当于白扯
@Autowired可以用在(spring官网例子)
1.应用于构造函数
public class MovieRecommender {
private final CustomerPreferenceDao customerPreferenceDao;