美文网首页
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