推荐视频教程
  • 独孤九贱(3)_JavaScript视频教程独孤九贱(3)_JavaScript视频教程
  • 独孤九贱(6)_jQuery视频教程独孤九贱(6)_jQuery视频教程
  • 视频教程分类
    首页 >web前端 >js教程 > 正文

    jackson解析json串时大小写自动转换的方法

    原创2018-03-15 14:30:3902465
    这次给大家带来jackson解析json串时大小写自动转换的方法,jackson解析json串时大小写自动转换的注意事项有哪些,下面就是实战案例,一起来看一下。

    问题

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

    那一行的代码如下:

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

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

    是小写的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;
     }
    }

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

    推荐阅读:

    ajax请求后台数据成功后无反映应该如何处理

    jQuery EasyUI选项卡面板的tabs使用

    以上就是jackson解析json串时大小写自动转换的方法的详细内容,更多请关注php中文网其它相关文章!

    Web大前端开发直播班

    声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。

  • 相关标签:javascript jackson json
  • 相关文章

    相关视频


    网友评论

    文明上网理性发言,请遵守 新闻评论服务协议

    我要评论
  • 专题推荐