我需要携带所有的json数据(存储它们,记录,返回),但我永远不会从代码中访问它们.有没有办法避免反序列化它们但仍然在序列化过程中使用它们?
class MyObject {
int importantField; // i want this field to be properly deserialized
String notImportantJsonGarbage; // i don't care what's here. it must be a valid json
}
Run Code Online (Sandbox Code Playgroud)
所以现在我希望能够从中反序列化它
{"importantField":7, "notImportantJsonGarbage":{"key1":3, "key2":[1,2,3]}}
Run Code Online (Sandbox Code Playgroud)
然后将其序列化为相同的字符串
UPDATE
我不想忽略这个属性.我需要这些数据.但作为一个字符串,没有完全反序列化的对象
我需要能够做到:
json1 -> object -> json2
json1 == json2
Run Code Online (Sandbox Code Playgroud)
AUTO - 访问设置,这意味着可见性规则将用于自动确定此属性的读取和/或写入访问.
READ_ONLY - 访问设置,表示只能读取属性以进行序列化,但在
反序列化期间不会写入(设置).READ_WRITE - 访问设置,这意味着
无论可见性规则如何,都将访问属性以进行序列化(将值写为外部表示)和反序列化(从外部表示中读取值).WRITE_ONLY - 访问设置,这意味着只能为反序列化编写(设置)属性,但序列化时不会读取(获取)属性,也就是说,序列化中不包含该属性的值.
所以在你的情况下你可以像这样使用它:
@JsonProperty(access = Access.READ_ONLY)
private String notImportantJsonGarbage;
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
979 次 |
| 最近记录: |