gpt4 book ai didi

java - 有没有办法让 jackson jsonize 只获取延迟加载的对象

转载 作者:塔克拉玛干 更新时间:2023-11-02 19:36:19 24 4
gpt4 key购买 nike

我知道很多地方都提到了这一点。但是我找不到以简单方式覆盖它的地方。

当我返回 person 对象时,在 Controller 中 Jackson 尝试序列化 case。我不需要将案例表发送到这里。我可以做 person.setCase(null) 但我认为必须有更好的方法来做到这一点。有没有办法告诉 Jackson 在未获取案例时不要序列化案例?

我有一堆像 hbopojogen 创建的具有一对多关系的 Pojos

@OneToMany( fetch = FetchType.LAZY, cascade = { CascadeType.PERSIST, CascadeType.MERGE         }, mappedBy = "person"  )
@org.hibernate.annotations.Cascade({org.hibernate.annotations.CascadeType.SAVE_UPDATE})
@Column( nullable = false )
@JsonManagedReference
public Set<Case> getCase() {
return this.case;

}

@ManyToOne( cascade = { CascadeType.PERSIST, CascadeType.MERGE }, fetch = FetchType.LAZY )
@org.hibernate.annotations.Cascade({org.hibernate.annotations.CascadeType.SAVE_UPDATE})
@JoinColumn(name = "PERSON_ID", nullable = true )
@JsonBackReference
public Person getPerson() {
return this.person;

}

public @ResponseBody Person searchPersonByCode(@RequestParam String codeString){

int code = Integer.parseInt(codeString);
Patient person = this.personDao.getByCode(code );

return person;
}

谢谢,

最佳答案

你检查过了吗Jackson Hibernate module ? Core jackson 不能对特定于 lib/framework 的功能做太多,但扩展模块可以——而且这个模块特别支持不解析惰性引用的概念。

关于java - 有没有办法让 jackson jsonize 只获取延迟加载的对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7440613/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com