zoukankan      html  css  js  c++  java
  • SpringBoot(2) Json框架 -- Jackson返回结果处理

    一、常用框架 阿里 fastjson,谷歌gson等
    JavaBean序列化为Json,性能:Jackson > FastJson > Gson > Json-lib 同个结构
    Jackson、FastJson、Gson类库各有优点,各有自己的专长(空间换时间,时间换空间)

    二、jackson相关自动处理

    指定字段不返回:@JsonIgnore
    指定日期格式:@JsonFormat(pattern="yyyy-MM-dd hh:mm:ss",locale="zh",timezone="GMT+8")
    空字段不返回:@JsonInclude(Include.NON_NUll)
    指定别名:@JsonProperty

    例如:返回User类

     1    /**
     2      * 功能描述:bean对象传参
     3      * 注意:1、注意需要指定http头为 content-type为application/json
     4      *         2、使用body传输数据
     5      * @param user
     6      * @return
     7      */
     8     @RequestMapping("/v1/save_user")
     9     public Object saveUser(@RequestBody User user){
    10         params.clear();
    11         params.put("user", user);
    12         return params;    
    13     }
    14     

    User类

     1 public class User {
     2 
     3     private int age;
     4     
     5     @JsonIgnore
     6     private String pwd; //忽略不返回
     7     
     8     @JsonProperty("account") 
     9     @JsonInclude(Include.NON_NULL)
    10     private String phone; //别名+为空不返回
    11     
    12     @JsonFormat(pattern="yyyy-MM-dd hh:mm:ss",locale="zh",timezone="GMT+8")
    13     private Date createTime; //时间格式
    14 
    15     public Date getCreateTime() {
    16         return createTime;
    17     }
    18 
    19     public void setCreateTime(Date createTime) {
    20         this.createTime = createTime;
    21     }
    22 
    23     public int getAge() {
    24         return age;
    25     }
    26 
    27     public void setAge(int age) {
    28         this.age = age;
    29     }
    30 
    31     public String getPwd() {
    32         return pwd;
    33     }
    34 
    35     public void setPwd(String pwd) {
    36         this.pwd = pwd;
    37     }
    38 
    39     public String getPhone() {
    40         return phone;
    41     }
    42 
    43     public void setPhone(String phone) {
    44         this.phone = phone;
    45     }
    46 
    47     public User() {
    48         super();
    49     }
    50 
    51     public User(int age, String pwd, String phone, Date createTime) {
    52         super();
    53         this.age = age;
    54         this.pwd = pwd;
    55         this.createTime = createTime;
    56     }
    57     
    58 }
  • 相关阅读:
    谷歌火狐浏览器限制的端口
    Web Api 内部数据思考 和 利用http缓存优化 Api
    Web Api 端点设计 与 Oauth
    FI-FBV0
    Others-SAP hybris 介绍
    ABAP-表修改日志存储
    TR-银行通信相关文档
    ABAP-Eclipse ADT中创建ABAP CDS视图
    TR-业务流程图
    FPM-OVP增强实例-银行账户
  • 原文地址:https://www.cnblogs.com/platycoden/p/9778264.html
Copyright © 2011-2022 走看看