Java 对象转JSON串首字母变成小写的问题

假设有一个对象testT

@Data
public class testT {
    private String ABC;
    private String BCD;
}

将这个对象使用阿里的fastjson转成JSON串会出现首字母变小写

public static void main(String[] args) {
        testT t=new testT();
        t.setABC("abc");
        t.setBCD("bcd");
        String s = JSONObject.toJSONString(t);
        System.out.println(s);
    }
结果:{"aBC":"abc","bCD":"bcd"}

解决首字母变小写的问题有两种:
1.通过对实体类属性加上@JSONField(name = "")注解

@Data
public class testT {
    @JSONField(name = "ABC")
    private String ABC;
    private String BCD;
}
结果:{"ABC":"abc","bCD":"bcd"}

2.使用GSON代替fastjson

 
    com.google.code.gson
    gson
    2.8.5

public static void main(String[] args) {
        testT t=new testT();
        t.setABC("abc");
        t.setBCD("bcd");
        String a=new Gson().toJson(t);
        System.out.println(a);
   }
结果:{"ABC":"abc","BCD":"bcd"}

你可能感兴趣的:(Java 对象转JSON串首字母变成小写的问题)