[英]How to ignore(/hide) attributes of class in JSON response
我是Java RESTful Web服务的新手。 我有如下的类结构:
class BaseClass{
String basicInfo;
}
class DataClass extends BaseClass{
String id;
}
class DataList extends BaseClass{
List<DataClass> dataList;
}
当我将DataList类作为Web服务的响应时,我以以下格式获取它:
{
"basicInfo" : "Mandetory",
"dataList" : [
{
"basicInfo" : "Optional",
"id" : "I_1001"
},
{
"basicInfo" : "Mandetory",
"id" : "I_1002"
}
]
}
但是我想忽略dataList的每个Data Object中的“ basicInfo”属性。
恩。
{
"basicInfo" : "Mandetory",
"dataList" : [
{
"id" : "I_1001"
},
{
"id" : "I_1002"
}
]
}
有什么办法可以忽略这些属性(使用注释)?
注意:我无法更改类结构。
@JsonIgnore
以上是您需要的注释。 要获得更多的变化,您可以通过以下链接 。 将上面的注释添加到您要在传输对象中忽略的字段,解析时将忽略它。 既然您没有提到要使用哪个库来处理json,我已经使用Jackson Library回答了您的问题。
您可以使用JAX-B注解@XmlTransient
你的属性basicInfo
。
另外,当JSON-B(JSR 367)可用(Java EE 8)时,您可以使用@JsonbTransient
或更好的@JsonbVisibility
属性。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.