jackson解析json字符串,首字母大写会自动转为小写的方法


Posted in Javascript onDecember 22, 2017

问题

楼主碰到的问题是,在实体类和表中定义的某个字段为RMBPrice,首字母大写,sql查询出来的列名也是大写的RMBPrice,但是使用jquery的datatables初始化列时,却出错。

那一行的代码如下:

{"name": "RMBPrice", "data": "RMBPrice", "className": "text-center", "render": formatRMBPrice},

jackson解析json字符串,首字母大写会自动转为小写的方法

打开页面却会显示这个。查看浏览器调用接口返回的值:

jackson解析json字符串,首字母大写会自动转为小写的方法

是小写的rmbprice

分析

接口返回的是一个@ResponseBody对象,在代码中打断点,一直到接口的返回值都是大写的,所以只可能是转换到json的时候出了问题。

百度 json 首字母大写,就出现了自动转换为小写的文章。

经过测试确实是,当前几个都是大写的字母,都会转换成小写,直到不是大写为止,若小写后面还有大写,则保持大写。

如:RRRddRRR会变成rrrddRRR.

解决办法

我直接修改js里面那行代码,改为:

{"name": "rmbprice", "data": "rmbprice", "className": "text-center", "render": formatRMBPrice},

经过查询,如果要保留大写需要加上注解。

比如jackson使用:

在实体类定义字段时:

@JsonProperty("ActionCode") 
 private String ActionCode = "";

fastjson使用:

@JSONField(name = “Name”) 而且该标记应该标记在get方法前:

public class User { 
 private String name; 
 private int age; 

 @JSONField(name = "Name") 
 public String getName(){
  return name;
 } 

 public void setName(String name){
  this.name = name;
 }

 @JSONField(name = "Age") 
 public int getAge(){
  return age;
 } 

 public void setAge(int age){
  this.age= age;
 }
}

也有说:

强制转换,用com.alibaba.fastjson.serializer.PascalNameFilter,直接把首字母转成大写。如:JSON.toJSONString(bean,new PascalNameFilter());

不过上面那些我都没有试过,因为我采用了自动转换为小写之后的name。想要保留大写还需要你们自己去多找找看喔~~☺☺

以上这篇jackson解析json字符串,首字母大写会自动转为小写的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
Javascript----文件操作
Jan 18 Javascript
Google Map Api和GOOGLE Search Api整合实现代码
Jul 18 Javascript
写出更好的JavaScript之undefined篇(上)
Nov 22 Javascript
extjs grid设置某列背景颜色和字体颜色的方法
Sep 03 Javascript
jQuery实现鼠标可拖动调整表格列宽度
May 26 Javascript
javascript实现倒计时N秒后网页自动跳转代码
Dec 11 Javascript
JavaScript显示表单内元素数量的方法
Apr 02 Javascript
jquery衣服颜色选取插件效果代码分享
Aug 28 Javascript
Js与Jq获取浏览器和对象值的方法
Mar 18 Javascript
AngularJS ng-app 指令实例详解
Jul 30 Javascript
js改变透明度实现轮播图的算法
Aug 24 Javascript
ES6中数组array新增方法实例总结
Nov 07 Javascript
js读取本地文件的实例
Dec 22 #Javascript
javascript将json格式数组下载为excel表格的方法
Dec 22 #Javascript
原生js实现移动端触摸轮播的示例代码
Dec 22 #Javascript
JavaScript多线程运行库Nexus.js详解
Dec 22 #Javascript
JS实现在文本指定位置插入内容的简单示例
Dec 22 #Javascript
JavaScript实现单例模式实例分享
Dec 22 #Javascript
vue使用axios时关于this的指向问题详解
Dec 22 #Javascript
You might like
PHP定时更新程序设计思路分享
2014/06/10 PHP
php有道翻译api调用方法实例
2014/12/22 PHP
php5.3不能连接mssql数据库的解决方法
2014/12/27 PHP
PHP有序表查找之二分查找(折半查找)算法示例
2018/02/09 PHP
showModalDialog 和 showModelessDialog
2007/01/22 Javascript
给网站上的广告“加速”显示的方法
2007/04/08 Javascript
js模拟滚动条(横向竖向)
2013/02/22 Javascript
你必须知道的JavaScript 中字符串连接的性能的一些问题
2013/05/07 Javascript
jQuery提交多个表单的小例子
2013/06/30 Javascript
javascript获取checkbox复选框获取选中的选项
2014/08/12 Javascript
全面解析标签页的切换方式
2016/08/21 Javascript
jQuery下拉菜单的实现代码
2016/11/03 Javascript
layer实现弹窗提交信息
2016/12/12 Javascript
Vue.js 2.0学习教程之从基础到组件详解
2017/04/24 Javascript
使用原生js+canvas实现模拟心电图的实例
2017/09/20 Javascript
详解vue-meta如何让你更优雅的管理头部标签
2018/01/18 Javascript
如何获取TypeScript的声明文件.d.ts
2018/05/01 Javascript
详解JavaScript中的坐标和距离
2019/05/27 Javascript
Vue实现摇一摇功能(兼容ios13.3以上)
2021/01/26 Vue.js
[02:21]2018完美盛典章节片——初心
2018/12/17 DOTA
Python复制目录结构脚本代码分享
2015/03/06 Python
python随机生成指定长度密码的方法
2015/04/04 Python
详解Python 函数如何重载?
2019/04/23 Python
python操作文件的参数整理
2019/06/11 Python
Python3.6 中的pyinstaller安装和使用教程
2020/03/16 Python
PyTorch预训练Bert模型的示例
2020/11/17 Python
selenium框架中driver.close()和driver.quit()关闭浏览器
2020/12/08 Python
你不知道的5个HTML5新功能
2016/06/28 HTML / CSS
html5图片上传预览示例分享
2014/04/14 HTML / CSS
世界上最大的巴士旅游观光公司:Big Bus Tours
2016/10/20 全球购物
用C或者C++语言实现SOCKET通信
2015/02/24 面试题
2014信息公开实施方案
2014/02/22 职场文书
英文辞职信范文
2015/05/13 职场文书
被告答辩状范文
2015/05/22 职场文书
导游词之昭君岛
2020/01/17 职场文书
MySQL表字段数量限制及行大小限制详情
2022/07/23 MySQL