美文网首页
Spring 常用注解解析

Spring 常用注解解析

作者: 一杉风雨 | 来源:发表于2018-10-03 19:43 被阅读0次

原生注解

  1. @Retention: 定义注解的保留策略
@Retention(RetentionPolicy.CLASS)    // 默认的保留策略,注解会在class字节码文件中存在,但运行时无法获得,
@Retention(RetentionPolicy.SOURCE)   // 注解仅存在于源码中,在class字节码文件中不包含  
@Retention(RetentionPolicy.RUNTIME)  // 注解会在class字节码文件中存在,在运行时可以通过反射获取到
  1. @Target: 定义注解的作用目标
@Target(ElementType.TYPE)               //接口、类、枚举、注解    
@Target(ElementType.FIELD)              //字段(类成员变量)、枚举的常量  
@Target(ElementType.METHOD)             //方法  
@Target(ElementType.PARAMETER)          //方法参数  
@Target(ElementType.CONSTRUCTOR)        //构造函数  
@Target(ElementType.LOCAL_VARIABLE)     //局部变量  
@Target(ElementType.ANNOTATION_TYPE)    //注解  
@Target(ElementType.PACKAGE)            ///包
  1. @Document: 说明该注解将被包含在javadoc中
  2. @Inherited: 说明子类可以继承父类中的该注解

Controller层相关注解

  1. @RequestMapping
value:      指定请求的实际地址;
method:     指定请求的method类型, GET、POST、PUT、DELETE等;
consumes:   指定处理请求的提交内容类型(Content-Type),例如application/json, text/html;
produces:   指定返回的内容类型,仅当request请求头中的(Accept)类型中包含该指定类型才返回;
params:     指定request中必须包含某些参数值时,才允许该方法处理;
headers:    指定request中必须包含某些指定的header值,才能让该方法处理请求。
  1. @RequestHeader
读取Request请求中的header部分数据
  1. @RequestParam
获取Request中提交的参数
  1. @RequestBody
用于读取Request请求的body部分数据
需要 Content-Type: application/json
传递参数为json格式
  1. @PathVariable
取出URL路径中的参数
  1. @ResponseBody
用于将Controller的方法返回的对象
通过适当的HttpMessageConverter转换为指定格式后
写入到Response对象的body数据区

其他常用注解

@order: 使用注解方式使bean的加载顺序得到控制
@order(value=1) @order(value=2) 值越小,越先被加载。
@Repository: 持久层
@Service: 服务层
@Controller: 控制层
@Component:不推荐使用
@Value: 缺省参数

相关文章

网友评论

      本文标题:Spring 常用注解解析

      本文链接:https://www.haomeiwen.com/subject/vactaftx.html