码迷,mamicode.com
首页 > Web开发 > 详细

fastJson中JSON的key大小写转换问题

时间:2016-12-01 03:29:57      阅读:524      评论:0      收藏:0      [点我收藏+]

标签:get   print   set   key   name   pac   junit   开发   log   

程序中的大小写问题总是会困扰这我们。

尤其在各个不同的系统之间的话更是如此。

在项目中对接的是SAP的项目的话,其中他们是以数据库为基础的开发环境,而数据库则是不认大小写的。

所以传给SAP的数据都是要大写。

但是Java规范中,变量都是要小写的。而且FastJson中的数据也是会将属性中的第一个转换成小写。这个问题很困扰我呢。

所以找到了解决方案,既然现在FastJson不行,我就换一个Gson就好了,就能够解决这个问题了。

哈哈:maven中加入gson的依赖

<dependencies>
      <dependency>
      <groupId>junit</groupId>
      <artifactId>junit</artifactId>
      <version>4.3</version>
      <scope>test</scope>
    </dependency>
    <dependency>
      <groupId>com.google.code.gson</groupId>
      <artifactId>gson</artifactId>
      <version>2.8.0</version>
    </dependency>
  </dependencies>

然后执行代码:

package com.wlh.study;

import java.util.ArrayList;
import java.util.List;

import com.google.gson.Gson;

public class TestJson {
    
    public static void main(String[] args) {
        Gson gson = new Gson();
        String json = gson.toJson(getBean());
        System.out.println(json);
    }

    private static Object getBean() {
        Bean bean = new Bean();
        bean.setNAME("123");
        bean.setTEST("test");
        List<SubBean> subBeanList = new ArrayList<SubBean>();
        SubBean subBean = new SubBean();
        subBean.setNAME("1234");
        subBean.setTEST("123444");
        subBeanList.add(subBean);
        SubBean subBean2 = new SubBean();
        subBean2.setNAME("122");
        subBean2.setTEST("123");
        subBeanList.add(subBean2);
        bean.setSUBLIST(subBeanList);
        return bean;
    }
}

结果:

{"TEST":"test","NAME":"123","SUBLIST":[{"NAME":"1234","TEST":"123444"},{"NAME":"122","TEST":"123"}]}

令人满意!,哈哈

fastJson中JSON的key大小写转换问题

标签:get   print   set   key   name   pac   junit   开发   log   

原文地址:http://www.cnblogs.com/fly-piglet/p/6120157.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!