Jackson 反序列化时实现大小写不敏感设置

网友投稿 1256 2023-01-03

Jackson 反序列化时实现大小写不敏感设置

Jackson 反序列化时实现大小写不敏感设置

常用配置

ObjectMapper objectMapper = new ObjectMapper();

objectMapper.configure(Feature.IGNORE_UNKNOWN,true);

objectMapper.configure(Feature.WRITE_BIGDECIMAL_AS_PLAIN,true);

objectMapper.configure(jsonParser.Feature.ALLOW_MISSING_VALUES,true);

objectMapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES,false);

objectMapper.configure(MapperFeature.ACCEPT_CASE_INSENSITIVE_PROPERTIES,false);//大小写脱敏 默认为false 需要改为tru

参考

com.fasterxml.jackson.databind.MapperFeature#ACCEPT_CASE_INSENSITIVE_PROPERTIES

使用注解方式:举例

public static void main(String[] arghttp://s) throws IOException {

String x = "{\n"

+ " \"TToUserName\":\"gh_a5624dd2db4e\",\n"

+ " \"FFromUserName\":\"ochvq0Kn35VlnTAcIJ3fRBAZTQUY\""

+ " }";

ObjectMapper objectMapper = new ObjectMapper();

Result map = objectMapper.readValue(x, Result.class);

System.out.printhttp://ln(map);

objectMapper.writeValue(System.out,map);

}

private static class Result {

private String ToUserName;

private String FromUserName;

@JsonProperty("ToUserName")

public String getToUserName() {

return ToUserName;

}

@JsonProperty("TToUserName")

public void setToUserName(String toUserName) {

ToUserName = toUserName;

}

@JsonProperty("FromUserName")

public String getFromUserName() {

return FromUserName;

}

@JsonProperty("FFromUserName")

public void setFromUserName(String fromUserName) {

FromUserName = fromUserName;

}

}

Jackson 转换大小写问题

Jackson转换json时会把大写转换成小写

解决办法:

1、在变量时加上: @JsonProperty

2、在set/get方法加上:@JsonIgnore

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:分析JVM源码之Thread.interrupt系统级别线程打断
下一篇:Maven学习
相关文章

 发表评论

暂时没有评论,来抢沙发吧~