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 相关文章推荐
分析Java中Map的遍历性能问题
Jun 26 Java/Android
Springboot集成阿里云OSS上传文件系统教程
Jun 28 Java/Android
使用@Value值注入及配置文件组件扫描
Jul 09 Java/Android
logback 实现给变量指定默认值
Aug 30 Java/Android
java协程框架quasar和kotlin中的协程对比分析
Feb 24 Java/Android
Java基于Dijkstra算法实现校园导游程序
Mar 17 Java/Android
JavaWeb实现显示mysql数据库数据
Mar 19 Java/Android
java后台调用接口及处理跨域问题的解决
Mar 24 Java/Android
Java时间工具类Date的常用处理方法
May 25 Java/Android
Android RecyclerView实现九宫格效果
Jun 28 Java/Android
java中如何截取字符串最后一位
Jul 07 Java/Android
Java代码规范与质量检测插件SonarLint的使用
Aug 05 Java/Android
Maven学习----Maven安装与环境变量配置教程
Spring Boot两种全局配置和两种注解的操作方法
Spring Boot 实现敏感词及特殊字符过滤处理
Jun 29 #Java/Android
elasticSearch-api的具体操作步骤讲解
Java SSH 秘钥连接mysql数据库的方法
一篇文章带你复习java知识点
Java elasticsearch安装以及部署教程
You might like
PHP写UltraEdit插件脚本实现方法
2011/12/26 PHP
使用php的HTTP请求的库Requests实现美女图片墙
2015/02/22 PHP
jquery获取下拉列表的值为null的解决方法
2011/03/18 Javascript
JS左右无缝滚动(一般方法+面向对象方法)
2012/08/17 Javascript
jquery ajax 局部无刷新更新数据的实现案例
2014/02/08 Javascript
js 设置缓存及获取设置的缓存
2014/05/08 Javascript
详解AngularJS控制器的使用
2016/03/09 Javascript
React Native中Navigator的使用方法示例
2017/10/13 Javascript
jQuery实现的下雪动画效果示例【附源码下载】
2018/02/02 jQuery
Vue.js实现数据响应的方法
2018/08/13 Javascript
Vue动态生成表格的行和列
2019/07/18 Javascript
浅探express路由和中间件的实现
2019/09/30 Javascript
vue项目使用.env文件配置全局环境变量的方法
2019/10/24 Javascript
使用vue实现HTML页面生成图片的方法
2020/03/12 Javascript
解决element-ui里的下拉多选框 el-select 时,默认值不可删除问题
2020/08/14 Javascript
[08:40]Navi Vs Newbee
2018/06/07 DOTA
python PIL模块与随机生成中文验证码
2016/02/27 Python
python3实现elasticsearch批量更新数据
2019/12/03 Python
python实现可下载音乐的音乐播放器
2020/02/25 Python
python中字符串的编码与解码详析
2020/12/03 Python
详解CSS 3 中的 calc() 方法
2018/01/12 HTML / CSS
详解html2canvas截图不能截取圆角图片的解决方案
2018/01/30 HTML / CSS
Ralph Lauren英国官方网站:Ralph Lauren UK
2018/04/03 全球购物
俄罗斯品牌服装和鞋子的在线商店:KUPIVIP
2019/10/27 全球购物
美国家居装饰购物网站:Amanda Lindroth
2020/03/25 全球购物
Perfume’s Club美国官网:西班牙第一家在线美容店
2020/06/10 全球购物
党员岗位承诺口号大全
2014/03/28 职场文书
学雷锋活动总结报告
2014/06/26 职场文书
个人主要事迹材料
2014/08/26 职场文书
公司收款委托书范本
2014/09/20 职场文书
法英专业大学生职业生涯规划书范文
2014/09/22 职场文书
学校党风廉政建设调研报告
2015/01/01 职场文书
幼儿园老师个人总结
2015/02/28 职场文书
2016年社区创先争优活动总结
2016/04/05 职场文书
Vue.js 带下拉选项的输入框(Textbox with Dropdown)组件
2021/04/17 Vue.js
Django中celery的使用项目实例
2022/07/07 Python