@Component注解
表示一个组件(bean),可以用在任何层次,使用时将该注解标注在相应类上即可。
@Repository注解
用于标识数据访问层(Dao层),功能与@Component相同。
@Service注解
用于标识业务层(Service层),功能与@Component相同。
@Controller注解
用于标识控制层(Spring MVC的Controller),功能与@Component相同。
@Autowired注解
用于对bean的属性变量,属性的setter方法,构造方法进行标注,配合对应的注解处理器,完成bean的自动配置工作。默认按照bean类型进行装配。加上@Qualifier注解,可指定一个bean的实例名称进行装配。
@Resource注解
作用相当于@Autowired,配置对应的注解处理器完成bean的自动配置工作,区别在于@Autowired默认按照bean类型进行装配,@Resource默认按照bean实例名称进行装配。包括name和type两个重要属性,name为实例的名称,type为实例的类型。
@Qualifier注解
与@Autowired配合,将默认按实际类型装配修改为按实际名称装配。