最佳答案
正如@Zutty建议的:
In Jackson new ObjectMapper().writeValueAsString(Object)
我尝试过,但得到了 com.fasterxml.jackson.databind.JsonMappingException
com.fasterxml.jackson.databind.JsonMappingException: Direct self-reference leading to cycle (through reference chain: com.learnkeeper.shared.entities.RootBook["permissionRef"]->com.googlecode.objectify.impl.ref.LiveRef["key"]->com.googlecode.objectify.Key["root"])
at com.fasterxml.jackson.databind.ser.BeanPropertyWriter._handleSelfReference(BeanPropertyWriter.java:781)
at com.fasterxml.jackson.databind.ser.BeanPropertyWriter.serializeAsField(BeanPropertyWriter.java:569)
at com.fasterxml.jackson.databind.ser.std.BeanSerializerBase.serializeFields(BeanSerializerBase.java:666)
at com.fasterxml.jackson.databind.ser.BeanSerializer.serialize(BeanSerializer.java:156)
at com.fasterxml.jackson.databind.ser.BeanPropertyWriter.serializeAsField(BeanPropertyWriter.java:575)
at com.fasterxml.jackson.databind.ser.std.BeanSerializerBase.serializeFields(BeanSerializerBase.java:666)
at com.fasterxml.jackson.databind.ser.BeanSerializer.serialize(BeanSerializer.java:156)
at com.fasterxml.jackson.databind.ser.BeanPropertyWriter.serializeAsField(BeanPropertyWriter.java:575)
at com.fasterxml.jackson.databind.ser.std.BeanSerializerBase.serializeFields(BeanSerializerBase.java:666)
at com.fasterxml.jackson.databind.ser.BeanSerializer.serialize(BeanSerializer.java:156)
at com.fasterxml.jackson.databind.ser.DefaultSerializerProvider.serializeValue(DefaultSerializerProvider.java:129)
at com.fasterxml.jackson.databind.ObjectMapper._configAndWriteValue(ObjectMapper.java:3385)
at com.fasterxml.jackson.databind.ObjectMapper.writeValueAsString(ObjectMapper.java:2779)
使用new Gson().toJson(Object)时,我得到了一个不错的Json:
{"id":4512395720392704,"origin":"FRENCH","target":"ENGLISH","wordKeys":[],"name":"Test","creation":"Aug 11, 2015 8:43:02 PM","modification":"Aug 11, 2015 8:43:02 PM","permissionRef":{"key":{"raw":{"kind":"Permission","id":6737807255011328}}},"lastVersion":true}
其他信息:我想要记录的所有Java对象实现java.io.Serialized
关于java - FasterXML/Jackson Java 库中是否有与 new Gson().toJson(Object) 等效的函数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31939331/