1、声明某个类为一个bean
1)@Controller 用于标注控制层组件(如struts中的action)
2)@Service 用于标注业务层组件(我们通常定义的service层就用这个)
3)@Repository 用于标注数据访问组件,即DAO组件。@Repository注解来生成bean的时候,如果没有定义名称那么就会根据类名来生成
4)@Component 泛指组件,当组件不好归类的时候,我们可以使用这个注解进行标注。
5)@Bean 放在方法上的注解,把返回值作为一个bean交给Spring管理。主要用在@Configuration注解的类里。
2、将bean注入到某个属性中
1)@Autowired 它是org.springframework.beans.factory.annotation.Autowired 是这个包中,它是spring的包。
@Autowired是通过类型获取的,如果发现找到多个bean,则,又按照byName方式比对。
它不能通过@Autowired("xxx")根据名称获取。如果我们想使用名称装配可以结合@Qualifier注解进行使用,如: @Autowired @Qualifier("baseDao")
默认情况下必须要求依赖对象必须存在,如果要允许null 值,可以设置它的required属性为false,如:@Autowired(required=false)
2)@Resource 它是javax.annotation.Resource; 这个包中,也就是说是javaEE中的,并不是spring中的。@Resource("xxx") 可以通过bean的名称来找到需要的bean。
3)@Qualifier 辅助@Autowired
3、减少配置
@Configuration 配置类,相当于xml文件+main方法中new ClassPathXmlApplicationContext()的方式来启动spring容器。
参考:https://www.cnblogs.com/duanxz/p/7493276.html