spring中可以使用xml配置文件实现Bean的装配工作,也可以使用注解来进行Bean的装配,用注解的方式可以简化配置嘛。
(1)@Component
@Component是一个泛化的概念,仅仅表示一个组件,可以作用在任何层次。
(2)@Repository
@Repository用于将持久层(DAO层)的类标识为spring的Bean
(3)@Service
@Service通常用在业务层,功能和@Component相同
(4)@Controller
@Controller标识表示层组件,功能和@Component相同
通过上面这些注解spring会自动创建相应的BeanDefinition对象,并注册到ApplicationContext中。
(5)@Autowired
@Autowired用于对Bean的属性变量、属性的set方法以及构造函数进行标注,配合对应的注解处理器完成Bean的自动装配工作。该注解默认按照Bean类型进行装配。
(6)@Resource
@Resource和@Autowired的作用相当。但是区别是@Resource默认按照Bean实例名称进行装配。该注解包括那么和type两个属性。
(7)@Qualifier
@Qualifier和@Autowired注解配合,将默认类型装配修改为Bean实例名进行装配。Bean实例名由@Qualifier注解参数指定。