有没有办法使用Jackson JSON处理器进行自定义字段级序列化?例如,我想要上课
public class Person {
public String name;
public int age;
public int favoriteNumber;
}
Run Code Online (Sandbox Code Playgroud)
序列化为以下JSON:
{ "name": "Joe", "age": 25, "favoriteNumber": "123" }
Run Code Online (Sandbox Code Playgroud)
注意,age = 25被编码为数字而favoriteNumber = 123被编码为字符串.开箱即用杰克逊编组int了一个号码.在这种情况下,我希望favoriteNumber被编码为字符串.
我从ExtJS获得一个日期字符串格式:
"2011-04-08T09:00:00"
当我尝试反序列化此日期时,它会将时区更改为印度标准时间(将时间+5:30添加).这就是我如何反序化日期:
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss");
getObjectMapper().getDeserializationConfig().setDateFormat(dateFormat);
Run Code Online (Sandbox Code Playgroud)
这样做也不会改变时区.我仍然在IST得到日期:
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd'T'HH:mm:ss");
dateFormat.setTimeZone(TimeZone.getTimeZone("GMT"));
getObjectMapper().getDeserializationConfig().setDateFormat(dateFormat);
Run Code Online (Sandbox Code Playgroud)
如何在没有时区麻烦的情况下对日期的日期进行反序列化?