- 此 问题 在 此处 已有 答案 * * :
Only using @JsonIgnore during serialization, but not deserialization ( 9 个 答案 )
Jackson: how to prevent field serialization [duplicate] ( 9 个 答案 )
8 天 前 关闭 。
我 有 一 个 REST API , 它 提供 了 一 个 JSON 。 在 我 从 REST API 接收 到 的 json 中 , 有 一 个 ID 属性 , 我 想 读取 它 , 以便 对 它 进行 一些 检查 。 但是 , 当 我 想 写 回 Web 服务 器 时 , ID 属性 不能 出现 在 响应 JSON 字符 串 中 。 因此 , 它 必须 是 一 个 只 写 属性 。但是 简单 地 将 属性 更改 为 只 写 会 阻止 检查 该 属性 的 值 。
例如 , 我 创建 了 一 个 新 产品 :
public class Product {
//This feild should not be ignore when I convert JSON to object.
// But the same one should be ignore when I convert the object to Json
@JsonProperty
public String id;
@JsonProperty
public String name;
}
中 的 每 一 个
GET 响应 :
{
"id": 1,
"name": "Product1"
}
格式
POST 错误 :
{
"id": 1, <-- This should be in the response
"name": "Product1"
}
格式
POST 应该 是 :
{
"name": "Product1"
}
格式
1条答案
按热度按时间ha5z0ras1#
要防止某个字段被序列化,可以通过将
@JsonProperty
注解的access
属性赋给JsonProperty.Access.WRITE_ONLY
来使用该属性。