ICode9

精准搜索请尝试: 精确搜索
首页 > 其他分享> 文章详细

Jackson基础使用手册

2022-05-03 13:33:39  阅读:202  来源: 互联网

标签:mapper Jackson String 基础 Person 使用手册 new class ObjectMapper


1、对象转json字符串

import com.fasterxml.jackson.databind.ObjectMapper;

public class Main {
    public static void main(String[] arges) throws Exception {
        ObjectMapper mapper = new ObjectMapper();
        Person person = new Person("jackson",20);
        System.out.println(mapper.writeValueAsString(person));
    }
}

1.1、使用字段别名

  @JsonProperty("userName")
    private String name;

1.2、@JsonIgnore注解使用

@JsonIgnore注解是在序列化时忽略该字段

    @JsonIgnore
    @JsonProperty("userName")
    private String name;
    @JsonProperty("userAge")
    private Integer age;

1.3、@JsonFormat注解格式化日期格式

    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss:SSS",timezone="GMT+8")
    private Date date;

1.4、JavaType

1.4.1、如果为Map类型

mapper.getTypeFactory().constructParametricType(Map.class,String.class,Student.class);

第二个参数是Map的key,第三个参数是Map的value

1.4.2、如果为List类型

personList  =  mapper.readValue(mapper.writeValueAsString(personList),mapper.getTypeFactory().constructParametricType(List.class,Person.class));

1.5、TypeReference

TypeReference比javaType模式更加方便,代码也更加简洁

mapper.readValue(json, new TypeReference<List<Person>>(){}); 

2、json字符串转对象

ObjectMapper mapper = new ObjectMapper();
Person person = new Person("jackson",20,175);
System.out.println(mapper.writeValueAsString(person));
//mapper.disable(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES);
System.out.println(mapper.readValue("{\"sheight\":172}", Person.class));

 

标签:mapper,Jackson,String,基础,Person,使用手册,new,class,ObjectMapper
来源: https://www.cnblogs.com/qianxiaoPro/p/16218162.html

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有