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


Posted in Java/Android onJune 29, 2021

常用配置

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

以上为个人经验,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Java/Android 相关文章推荐
手把手教你用SpringBoot将文件打包成zip存放或导出
Jun 11 Java/Android
一篇带你入门Java垃圾回收器
Jun 16 Java/Android
eclipse创建项目没有dynamic web的解决方法
Jun 24 Java/Android
Java基于字符界面的简易收银台
Jun 26 Java/Android
死磕 java同步系列之synchronized解析
Jun 28 Java/Android
dubbo服务整合zipkin详解
Jul 26 Java/Android
Java中try catch处理异常示例
Dec 06 Java/Android
springmvc直接不经过controller访问WEB-INF中的页面问题
Feb 24 Java/Android
剑指Offer之Java算法习题精讲二叉树的构造和遍历
Mar 21 Java/Android
springboot用户数据修改的详细实现
Apr 06 Java/Android
SpringBoot使用ip2region获取地理位置信息的方法
Jun 21 Java/Android
MyBatis在注解上使用动态SQL方式(@select使用if)
Jul 07 Java/Android
Maven学习----Maven安装与环境变量配置教程
Spring Boot两种全局配置和两种注解的操作方法
Spring Boot 实现敏感词及特殊字符过滤处理
Jun 29 #Java/Android
elasticSearch-api的具体操作步骤讲解
Java SSH 秘钥连接mysql数据库的方法
一篇文章带你复习java知识点
Java elasticsearch安装以及部署教程
You might like
PHP文本数据库的搜索方法
2006/10/09 PHP
使用PHPMYADMIN操作mysql数据库添加新用户和数据库的方法
2010/04/02 PHP
简单的移动设备检测PHP脚本代码
2011/02/19 PHP
PHP防CC攻击实现代码
2011/12/29 PHP
php json_encode值中大括号与花括号区别
2013/09/30 PHP
php中执行系统命令的方法
2015/03/21 PHP
php实现将上传word文件转为html的方法
2015/06/03 PHP
php简单解析mysqli查询结果的方法(2种方法)
2016/06/29 PHP
thinkphp 字母函数详解T/I/N/D/M/A/R/U
2017/04/03 PHP
JavaScript this 深入理解
2009/07/30 Javascript
jQuery 标题的自动翻转实现代码
2009/10/14 Javascript
JS:window.onload的使用介绍
2013/11/13 Javascript
jQuery前端分页示例分享
2015/02/10 Javascript
jQuery插件ContextMenu自定义图标
2017/03/15 Javascript
解决Vue 项目打包后favicon无法正常显示的问题
2018/09/01 Javascript
js中forEach,for in,for of循环的用法示例小结
2020/03/14 Javascript
JavaScript 中的执行上下文和执行栈实例讲解
2021/02/25 Javascript
Python yield 使用浅析
2015/05/28 Python
python下载文件记录黑名单的实现代码
2017/10/24 Python
利用Django内置的认证视图实现用户密码重置功能详解
2017/11/24 Python
python基础学习之如何对元组各个元素进行命名详解
2018/07/12 Python
使用Python如何测试InnoDB与MyISAM的读写性能
2018/09/18 Python
python pcm音频添加头转成Wav格式文件的方法
2019/01/09 Python
python字典的值可以修改吗
2020/06/29 Python
python实现将中文日期转换为数字日期
2020/07/14 Python
梅西百货澳大利亚:Macy’s Australia
2017/07/26 全球购物
blueseventy官网:铁人三项和比赛泳衣
2021/02/06 全球购物
商务日语毕业生自荐信
2013/11/23 职场文书
工艺员岗位职责
2014/02/11 职场文书
一岗双责责任书
2014/04/15 职场文书
放飞梦想演讲稿200字
2014/08/26 职场文书
基层党员四风问题自我剖析材料
2014/09/29 职场文书
遗嘱范文
2015/08/07 职场文书
《火烧云》教学反思
2016/02/23 职场文书
python实现会员信息管理系统(List)
2022/03/18 Python
A22国内电台短波广播频率表
2022/05/10 无线电