一文总结一文总结Spring 注解及作用详解注解及作用详解
文章目录文章目录开启注解扫描配置@RequestMapping声明bean的注解注入bean的注解spring配置文件中读取properties配置文件j配
置类相关注解切面(AOP)相关注解@Bean的属性支持@Value注解环境切换异步相关定时任务相关@Enable*注解说明测试
相关注解
开启注解扫描配置开启注解扫描配置
@RequestMapping
@RequestMapping 是用来处理请求地址映射的注解,可用于类或方法上。用在类上,表示类中所有的响应的 方法都是以该
地址作为父路径来访问,用在方法上表示该方法的访问的路径;两者结合起来的访问的路径为完 整的访问某个方法的路径。
@RequestMapping 注解的属性:
value:指定请求的实际的地址,指定的地址可以是 URI Template 模式;
method:指定访问的方法
consumes:指定处理请求的内容类型,比如 aplication/json;text/html
produces:指定返回的内容的类型
params:指定 request 中必须包含某些参数值时,才让该方法处理请求
headers:指定 request 中必须包含指定的 header 值,才能让该方法处理请求
RequestParam:用于将指定的请求参数赋给方法中的形参
Required:负责检查一个bean在初始化时其声明的set方法是否被执行,当某个被标注了 @Required的 Setter方法没有被调
用,则 Spring在解析的时候会抛出异常,以提醒开发者对相应属性进行设置。 @Required注解只能标注在 Setter方法之上。
@EnableSwagger2Doc :通过这种注解来生成对应的API文档
@Primary :当存在多个相同类型的Bean,例如,多个DataSource,多个JdbcTemplate时,强烈建议总是使用@Primary把其
中某一个Bean标识为“主要的”,使用@Autowired注入时会首先使用被标记为@Primary的Bean。
@CrossOrigin(origins = “*”, maxAge = 3600) 跨域
@Transactional @Transactional(rollbackFor=Exception.class)出现异常也回滚
@Transactional(noRolbackFor=Exception.class)出现异常也不会回滚
声明声明bean的注解的注解
@Component
作用:把当前类对象存入Spring容器中,相当于在 xml 中配置一个 bean。
属性:value:指定 bean 的 id。如果不指定 value 属性,默认 bean 的 id 是当前类的类名且首字母小写。
@Controller @Service @Repository
三个注解都是针对一个@Component 的衍生注解,他们的作用及属性都是一模一样的。只不过是提供了更加明确的语义化。
@Respository: 标识持久层,数据访问组件,即 DAO 组件
@Service: 标识业务层组件
@Controller :标识表现层,控制层组件
相当于XML配置的
注入注入bean的注解的注解
@Resource 和@Autowired
@Resource 和@Autowired 都是做 bean 的注入时使用,都可以写在字段上,或者是 setter 方法上 @Autowired 注解是按照类
型(byType)装配依赖对象(由 Spring 提供) 如果在此基础上想通过 byName 来装配,可以结合@Qualifier 注解来一起使
用。 @Resource 默认按照 byName 自动注入
@Resource 有两个重要的属性,name 和 type
@Resource 如果写属性 name,则按照 byName 来装配,如果属性为 type,则按照 byType 来装配,不写按照默 认的方式来
装配(byName)
@Autowired @Qualifier 与 @Resource
评论0