【发布时间】:2022-11-21 02:08:13
【问题描述】:
我的 Spring 应用程序正在从 S3 获取 String,我需要将其转换为 JSON,然后再转换为 Person 对象。这一切都按预期工作。
import com.fasterxml.jackson.core.JsonProcessingException;
import com.fasterxml.jackson.databind.JsonNode;
import com.fasterxml.jackson.databind.ObjectMapper;
ObjectMapper mapper = new ObjectMapper();
JsonNode actualObj = mapper.readTree(s );
Person person = mapper.treeToValue(actualObj, Person.class);
if(person.getBalance()>0{
person.setInCredit(true);
}
// todo - how to not return balance?
我的对象如下:
import com.fasterxml.jackson.annotation.JsonProperty;
public class Person{
@JsonProperty("id")
private Integer id;
@JsonIgnore
@JsonProperty("balance")
private Integer balance;
@JsonProperty("inCredit")
private Boolean inCredit;
// other fields and setters etc
}
如上所示,我最初需要读取余额以确定 inCredit 字段,但我想从 json 响应中排除余额。
如何确保字段余额从我的查询中读取正常,但不会在我的端点响应中再次返回?
注意 - 我尝试添加 JsonIgnore 但这没有用。
【问题讨论】:
-
你也可以添加进口商品吗?
-
现在添加进口
标签: java json spring-boot jackson setter