搬运sg-UAP的常用注解

搬运于:https://blog.csdn.net/zhangbingtao2011/article/details/52083358
仅供个人学习记录,追究必删!

一:常用spring注解

1.@Controller

   @Controller注解将一个类标明为用来接收HTTP请求控制器

2.@RequesMapping

   @RequestMapping注解将特定的URL和具体的控制器类或控制类类中的方法绑定

3.@PathVariable

   添加@PathVariable注解,可以直接在方法中使用请求URI中的值。

4.@Repository

     用于将数据访问层(DAO层) 的类标识为Spring Bean。具体只需将该注解标注          

    在 DAO类上即可。同时,为了让Spring能够扫描类路径中的类并识别出       

     @Repository注解,需要在XML配置文件中启用Bean的自动扫描功能,这可    

     以通过<context:component-scan/><context:component-scanbase-

     package=”bookstore.dao”/>   如此,我们就不再需要在XML中显式使用

    <bean/> 进行 Bean 的配置。Spring在容器初始化时将自动扫描base-package         

    指定的包及其子包下的所有class文件,所有标注了@Repository的类都将被册       

     为 SpringBean。

二:控制层使用的注解介绍

  1. @ColumnRequestParam:
    作用:参数注解。

    com.sgcc.uap.rest.annotation.ColumnRequestParam

    请求体是{columns:[“id”,“name”]}的形式,指明方法的参数是从请求体中获取的字符串数组。

用于在获取元数据信息时,从请求体获取显示的列,并将列名封装为字符串数组。

  例如:请求参数为params={“columns”:[“id”,“name”,“sex”]},返回数据为:String[]{“id”,“name”,“sex”}    

使用示例:@RequestMapping("/meta")

public @ColumnResponseBodyList<ViewAttributeData>getMetaData(

    @ColumnRequestParam("params")String[] columns) {

         …………

    }
  1. @ColumnResponseBody:

    作用:方法体注解,对返回值进行拦截。

    拦截List类型的返回值,将返回值解析为JSON格式字符串,如:

    {“columns”:[{“name”:”id”,”caption”:”编号”,”length”:32},{},{},…]}

    com.sgcc.uap.rest.annotation.ColumnResponseBody

    响应体是{columns:[{},{},{}……]}的形式,指明将方法返回值转化为JSON格式列信息,

    将返回的对象转换为json串。

    返回对象为ViewAttributeData,

    返回数据格式为:

    {“columns”:[{“name”:“id”,“caption”:“ID”,nullable:false,dataType:“string”},…]}

  2. @IdRequestBody:

    作用:参数注解。

    拦截请求体为{params:{primaryKey: ”EMP_ID” , ids:[”001”, “002”,……] }}格式的数据,将此数据转换为字符串数组。如

              [“0001”,”0002”]。
    

    com.sgcc.uap.rest.annotation.IdRequestBody

    指明方法的参数是从请求体中获取的字符串数组 ,并将主键信息封装为IDRequestObject对象。通过getPrimarykey()和getIds()取出主键名称和主键值

    例如:用于删除操作从请求体中获取主键

    public @VoidResponseBody

Object delete(@IdRequestBodyIDRequestObjectid) {

            。。。。。。

  }
  1. @ItemRequestParam:

     作用:参数注解。
    
     com.sgcc.uap.rest.annotation.ItemRequestParam 
    
     拦截请求数据{“itemType”:”school”},将数据的itemType解析,返回字符串。例如返回:school。
    
     该注解用于在树场景中取出节点的itemType。使用示例:
    
    public @TreeResponseBody
    

ListgetNodes(@PathVariableString id,

@ItemRequestParam(“params”)StringitemType){

            。。。。。。

     }
  1. @ItemsRequestBody:

     作用:参数注解。
    
     com.sgcc.uap.rest.annotation.ItemsRequestBody
    
     拦截请求体的数据格式:
    
    {“items”:[{“id”:”01”,”name”:”n1”},{},{},…]}和{“parentID”:”0003329281”,“items”:[{“id”:”01”,”name”:”n1”},{},{},…]}
    
     将数据转化为List<Map>格式,list中map封装一个item数据
    
     使用示例:用于保存场景,将请求体中的记录封装为到list中。
    
    public @ItemResponseBody
    

ListsaveSchool(@ItemsRequestBodyListlist) {

。。。。

    }
  1. @ItemsResponseBody:

    作用:方法体注解。
    
    拦截返回数据。将返回的list集合转化为json字符串。
    
             {“items”:[{“id”:”01”,”name”:”n1”},{},{},…] ,itemCount:100}
    
    com.sgcc.uap.rest.annotation.ItemResponseBody
    
    拦截返回数据。将返回的list集合转化为json字符串。指明返回值将以 
    
    {items:[{}{}{}{}]}的形式返回。使用示例:
    

    public @ItemResponseBody

QueryResultObjectquery(@QueryRequestParam(“params”)

   RequestConditionparams){

    。。。。。

   }
  1. @QueryRequestParam:

     作用:参数注解。
    
     com.sgcc.uap.rest.annotation.QueryRequestParam
    
     GET请求中从url中通过指定KEY值将参数取出,用于查询条件。    
    
     QueryRequestParam("params"),将url中的{"params":{"filter":"name  ='eqe'&sex='female'","orderStr":"age","columns":"id,name,age,sex"}}转换为RequestCondition对象。使用实例:
    
     public @ItemResponseBody
    

QueryResultObjectquery(@QueryRequestParam(“params”)RequestCondition

    params){

            。。。。。

    } 
  1. @QueryRequestParam:

     作用:参数注解。
    
     com.sgcc.uap.rest.annotation.QueryRequestParam
    
     GET请求中从url中通过指定KEY值将参数取出,用于查询条件。    
    
     QueryRequestParam("params"),将url中的{"params":{"filter":"name  ='eqe'&sex='female'","orderStr":"age","columns":"id,name,age,sex"}}转换为RequestCondition对象。使用实例:
    
     public @ItemResponseBody
    

QueryResultObjectquery(@QueryRequestParam(“params”)RequestCondition

    params){

            。。。。。

    } 
  1. @RawResponseBody:

    作用:方法体注解。

    拦截返回值,对于字符串类型的返回值可以原样输出。

    对于List或对象类型的返回值转换为响应的json字符串输出。方便用户封装自定义的格式。

    com.sgcc.uap.rest.annotation.RawResponseBody

    指明方法的返回值应当以原生返回值的形式,绑定到响应体中 ,使用该注解的方法应当返回object。

    使用示例:将方法中返回的字符串原样输出,用于自己拼装返回的格式,不用平台的json转换。

    public @RawResponseBodyObject test(){

return"welcome!";

  }

  示例中的方法将字符串”welcome!”原样返回。
  1. @VoidResponseBody:

    作用:将空返回值包装为通用的返回格式。

    com.sgcc.uap.rest.annotation.VoidResponseBody

    用于没有特定返回值得方法注解,将对象转换为统一的json串。如:

    {

“successful”:true, ————方法是否调用成功

"resultHint":"",     ————异常信息

"resultValue": “”   ————数据信息是空的

   }

   例如:删除操作

  public @VoidResponseBody

   Object delete(@IdRequestBodyIDRequestObjectid) {

                   。。。。

   }

三:Hibernate实体映射注解支持

平台已经引入了hibernate的注解功能,具体用法与hibernate注解映射相同,

详细用法可参考Hibernate注解映射相关文档。

@Entity

@Table(name= “O_ORG”)

publicclass ORG implementsjava.io.Serializable{

@Id

@GenericGenerator(name="ORG_ID",strategy="uuid")

@GeneratedValue(generator="ORG_ID")

@Column(name="ORG_ID")

public String getId() {

    return this.id;

}



public void setId(Stringid) {

    this.id = id;
}

}

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值