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

作者:平静不绝望 时间:2021-11-18 06:17:18 

常用配置


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[] args) throws IOException {
       String x = "{\n"
           + "        \"TToUserName\":\"gh_a5624dd2db4e\",\n"
           + "        \"FFromUserName\":\"ochvq0Kn35VlnTAcIJ3fRBAZTQUY\""
           + "       }";

ObjectMapper objectMapper = new ObjectMapper();
       Result map = objectMapper.readValue(x, Result.class);
       System.out.println(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

来源:https://beijingngcc.blog.csdn.net/article/details/85009163

标签:Jackson,反序列化,大小写,不敏感
0
投稿

猜你喜欢

  • C语言字符串操作总结大全(超详细)

    2023-07-06 15:14:56
  • 浅谈JVM中的JOL

    2022-10-06 15:44:49
  • Java去掉数字字符串开头的0三种方法(推荐)

    2022-05-31 08:04:41
  • java 类加载机制和反射详解及实例代码

    2023-11-30 06:42:20
  • springboot 在idea中实现热部署的方法

    2022-10-24 22:27:19
  • Java设计模式之抽象工厂模式

    2022-05-30 12:45:16
  • Spring AOP底层原理及代理模式

    2023-05-05 14:19:38
  • C#中Json反序列化的实现方法

    2022-07-16 04:34:19
  • Spring应用抛出NoUniqueBeanDefinitionException异常的解决方案

    2023-11-25 07:36:19
  • Java实现按行读取大文件

    2022-11-05 13:56:57
  • Java硬币翻转倍数递增试算实例

    2021-09-29 08:39:22
  • Java Thread.currentThread().getName() 和 this.getName()区别详解

    2021-10-31 01:46:18
  • ShardingSphere jdbc实现分库分表核心概念详解

    2023-11-24 12:09:45
  • springboot多环境配置文件及自定义配置文件路径详解

    2021-09-30 03:55:54
  • Spring Security 强制退出指定用户的方法

    2022-10-04 18:13:04
  • java.lang.UnsatisfiedLinkError: %1 不是有效的Win32应用程序错误解决

    2022-06-14 23:21:51
  • Java 实现常见的非对称加密算法

    2023-11-27 18:51:03
  • C# 正则判断一个数字的格式是否有逗号的代码

    2021-09-13 07:42:12
  • 举例讲解Java中Piped管道输入输出流的线程通信控制

    2021-06-25 14:19:58
  • 阿里云OSS域名配置及简单上传的示例代码

    2022-04-08 19:14:32
  • asp之家 软件编程 m.aspxhome.com