Java gson.toJson在Json中将对象中的非空字符串值设置为空/NULL
我正在尝试使用Java gson.toJson在Json中将对象中的非空字符串值设置为空/NULL,java,json,gson,Java,Json,Gson,我正在尝试使用gsonapi将Java对象转换为Json。但是,有时对象中的字符串值会在Json输出中转换为空/NULL public class MyClass implements Serializable { private long longValue = 9; private String stringValue = "my string"; // ....... } 我正在使用Gson将MyClass的对象转换为Json Gson gson
gsonapi
将Java对象转换为Json
。但是,有时对象中的字符串值会在Json
输出中转换为空/NULL
public class MyClass implements Serializable {
private long longValue = 9;
private String stringValue = "my string";
// .......
}
我正在使用Gson
将MyClass的对象
转换为Json
Gson gson = new Gson();
MyClass obj = new MyClass();
String jsonStr = gson.toJson(obj);
println jsonStr;
变量“stringValue”的值间歇性地设置为空/空
{"longValue": 9, "stringValue": ""}
我的问题是为什么Gson
在Json
对象中设置空/NULL值。我很确定输入的对象
没有空/NULL字符串
非常感谢您在这方面提供的任何帮助。我只是多次运行了您的代码,但从未看到过此问题。您确定stringValue
没有被设置为空字符串吗?您能否尝试将字段设置为“最终”
,以确保在设置为初始值后无法对其进行更改?很抱歉,确认延迟。。。输出json实际上没有问题,只是我的疯狂客户机(使用我的WS)发出了这个错误警报。。该死我浪费了很多时间!感谢@Anderschuller感谢您的努力