Rumah > hujung hadapan web > tutorial js > 怎样操作jackson解析json字符串时首字母的大小写转换

怎样操作jackson解析json字符串时首字母的大小写转换

php中世界最好的语言
Lepaskan: 2018-04-14 09:21:49
asal
3936 orang telah melayarinya

这次给大家带来怎样操作jackson解析json字符串时首字母的大小写转换,操作jackson解析json字符串时首字母大小写转换的注意事项有哪些,下面就是实战案例,一起来看一下。

问题

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

那一行的代码如下:

1

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

Salin selepas log masuk

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

是小写的rmbprice

分析

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

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

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

如:RRRddRRR会变成rrrddRRR.

解决办法

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

1

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

Salin selepas log masuk

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

比如jackson使用:

在实体类定义字段时:

1

2

@JsonProperty("ActionCode"

 private String ActionCode = "";

Salin selepas log masuk

fastjson使用:

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

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

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;

 }

}

Salin selepas log masuk

也有说:

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

相信看了本文案例你已经掌握了方法,更多精彩请关注php中文网其它相关文章!

推荐阅读:

JS的Object值怎样合并

Angular操作table表格使其排序

Atas ialah kandungan terperinci 怎样操作jackson解析json字符串时首字母的大小写转换. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Label berkaitan:
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan