【发布时间】:2017-05-10 13:07:05
【问题描述】:
我有一个包含这些字段的课程:
private transient List<Peer> peers;
private final String name;
private final int points;
private final int size;
使用Gson我想反序列化这个JSON字符串请求:
{
"name": "game1",
"points": "11",
"size": "10",
"peers": [
{
"address": "localhost",
"port": 1234,
"fullAddress": "localhost:1234"
}
]
}
我的问题是 Peer 对象不会被反序列化到 peers 列表中,除非我没有将该字段声明为 transient。
Gson 有没有办法只在序列化期间而不是在反序列化期间有一些字段瞬态?
【问题讨论】:
-
这就是java中
transient关键字的意义所在。这意味着您不能反序列化该属性。你应该看看this -
我知道。没有什么可以让我只反序列化某些字段而不序列化它?
-
@gioaudino 你用 Gson 尝试过 addDeserializationExclusionStrategy() 吗?
标签: java json serialization gson transient