声明bean的注解:
@Component 没有明确的角色
@Service 在服务层(业务逻辑层被使用)
@Repository 在数据访问层(dao层)被使用
@Controller 在表现层(控制层)用到
@Autowired spring提供的注解
@Resource JSR-250提供的注解
@Resource注解是J2EE提供的,默认按名称进行匹配,名称可以通过name属性进行指定,没有指定name属性,当注解写在字段上时,默认取字段名进行查找,如果字段写在setter方法上默认取属性名进行装配,当找不到与名称匹配的bean时才按照类型进行装配。而@Autowired注解是属于spring的默认按照类型匹配,默认情况下要求依赖对象必须存在,如果允许null值,可以设置为required属性为false,如@Autowired(requried=false)如果想要使用名称匹配可以结合@Qualifier注解进行使用
Spring MVC 用到的注解
Spring Boot 用到的注解
加载条件注解