我已经在类中的一个字段上应用了JsonIgnore注解。
public class User {
private String name;
@JsonIgnore
private String id;
public String getName(){ return this.name;}
public void setName(String name){ this.name = name; }
public String getId() { return this.id; }
public void setId(String id) {this.id = id; }
}
当类对象作为单个对象返回时,该字段将被忽略。
public ResponseEntity<User> get() {.... some code to get user and return User object}
但是,当对象列表作为响应返回时,该字段不会被忽略,仍然存在于响应中。
第一次
您能帮助我们如何完全忽略该字段,不发送响应吗?
3条答案
按热度按时间gojuced71#
我假设
ProjectService
类中的response
变量如下所示:您正在尝试将json转换为
List.class
,而不是用户列表List<User>
,因此更改以下代码行:更改为:
1yjd4xko2#
将@JsonIgnore添加到字段(在本例中为getter),而不是直接添加到属性
chy5wohz3#
我试着重现你的问题,但没有成功。它对我很有效。所以可能是你的库的版本。下面是我使用的版本:
下面是我运行的代码:
下面是我得到的输出:
下面是类JsonPerson和JsonGroup(省略setter和getter)
类
JsonUtils
-Jackson-Json库上的一个薄 Package 器。它是由我编写和维护的开源MgntUtils库的一部分。如果你感兴趣,你也可以使用它。这里是JsonUtils Javadoc,这个库可以作为Maven artifact On Maven central和Github获得(包括源代码和Javadoc)