码迷,mamicode.com
首页 > 编程语言 > 详细

SpringBoot(2) Json框架 -- Jackson返回结果处理

时间:2018-10-12 16:08:33      阅读:548      评论:0      收藏:0      [点我收藏+]

标签:for   日期格式   别名   自动   etag   自己   mat   ack   传输   

一、常用框架 阿里 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 }

 

SpringBoot(2) Json框架 -- Jackson返回结果处理

标签:for   日期格式   别名   自动   etag   自己   mat   ack   传输   

原文地址:https://www.cnblogs.com/platycoden/p/9778264.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!