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中一些比较常用的注解总结
Jun 11 Java/Android
Java elasticsearch安装以及部署教程
Jun 28 Java/Android
HashMap实现保存两个key相同的数据
Jun 30 Java/Android
总结Java对象被序列化的两种方法
Jun 30 Java/Android
详解Spring Boot使用系统参数表提升系统的灵活性
Jun 30 Java/Android
JavaWeb Servlet实现网页登录功能
Jul 04 Java/Android
Java实现聊天机器人完善版
Jul 04 Java/Android
Java获取e.printStackTrace()打印的信息方式
Aug 07 Java/Android
Java网络编程之UDP实现原理解析
Sep 04 Java/Android
聊聊Lombok中的@Builder注解使用教程
Nov 17 Java/Android
Java 使用类型为Object的变量指向任意类型的对象
Apr 13 Java/Android
解决spring.thymeleaf.cache=false不起作用的问题
Jun 10 Java/Android
Maven学习----Maven安装与环境变量配置教程
Spring Boot两种全局配置和两种注解的操作方法
Spring Boot 实现敏感词及特殊字符过滤处理
Jun 29 #Java/Android
elasticSearch-api的具体操作步骤讲解
Java SSH 秘钥连接mysql数据库的方法
一篇文章带你复习java知识点
Java elasticsearch安装以及部署教程
You might like
DC宇宙的第一个英雄,堪称动漫史鼻祖,如今成为美国文化的象征
2020/04/09 欧美动漫
高性能PHP框架Symfony2经典入门教程
2014/07/08 PHP
php实现两表合并成新表并且有序排列的方法
2014/12/05 PHP
ExtJS Grid使用SimpleStore、多选框的方法
2009/11/20 Javascript
简易js代码实现计算器操作
2013/04/15 Javascript
jquery对象和DOM对象的区别介绍
2013/08/09 Javascript
详细解读JavaScript的跨浏览器事件处理
2015/08/12 Javascript
JavaScript学习笔记整理_用于模式匹配的String方法
2016/09/19 Javascript
基于Node.js + WebSocket打造即时聊天程序嗨聊
2016/11/29 Javascript
Vue.js路由组件vue-router使用方法详解
2016/12/02 Javascript
Vue中的数据监听和数据交互案例解析
2017/07/12 Javascript
Webpack 服务器端代码打包的示例代码
2017/09/19 Javascript
Angular 4中如何显示内容的CSS样式示例代码
2017/11/06 Javascript
windows系统下更新nodejs版本的方案
2017/11/24 NodeJs
jQuery Ajax实现Select多级关联动态绑定数据的实例代码
2018/10/26 jQuery
Element中的Cascader(级联列表)动态加载省\市\区数据的方法
2019/03/27 Javascript
详解Vue template 如何支持多个根结点
2020/02/10 Javascript
ES6 proxy和reflect的使用方法与应用实例分析
2020/02/15 Javascript
Vue项目前后端联调(使用proxyTable实现跨域方式)
2020/07/18 Javascript
[02:16]深扒TI7聊天轮盘语音出处2
2017/05/11 DOTA
讲解Python中fileno()方法的使用
2015/05/24 Python
Python实现的求解最大公约数算法示例
2018/05/03 Python
Python中一些不为人知的基础技巧总结
2018/05/19 Python
Django搭建项目实战与避坑细节详解
2020/12/06 Python
HTML5之SVG 2D入门4—笔画与填充
2013/01/30 HTML / CSS
微信浏览器取消缓存的方法
2015/03/28 HTML / CSS
施华洛世奇中国官网:SWAROVSKI中国
2020/06/16 全球购物
Zatchels官网:英国剑桥包品牌
2021/01/12 全球购物
学生会竞聘书范文
2014/03/31 职场文书
幼儿评语大全
2014/04/30 职场文书
司法局火灾防控方案
2014/06/05 职场文书
推销搭讪开场白
2015/05/28 职场文书
Python基础之Socket通信原理
2021/04/22 Python
无线电知识基础入门篇
2022/02/18 无线电
golang实现浏览器导出excel文件功能
2022/03/25 Golang
基于Android10渲染Surface的创建过程
2022/08/14 Java/Android