gpt4 book ai didi

java - 有没有办法避免 Jackson 序列化未获取的惰性属性

转载 作者:行者123 更新时间:2023-12-01 12:29:26 26 4
gpt4 key购买 nike

我在这个主题上搜索了一整天,并检查了几乎所有提交的相关问题。

这是我的问题:对我来说,让 Jackson 尊重 hibernate 中定义的惰性属性应该是一项简单的任务。但正如我注意到的,这个问题似乎没有解决方案,我认为几乎每个开发 Restful java spring 应用程序并依赖于服务器的 Json 响应的人都会面临这个问题。 Json 响应包含序列化对象,大多数情况下不应包含其他相关对象(这些对象始终由 Jackson 获取,这会导致不需要的 sql 查询和额外的不必要的加载时间)。

即使 Jackson 数据类型 Hibernate 库也只提供了一种解决方案,以防止 Jackson 尝试序列化惰性未加载属性时抛出序列化异常,而实际上并未将序列化限制为仅获取的属性。此外,使用 JsonIgnore 注释并不能解决问题,因为它甚至会阻止 Jackson 永远序列化 fetched/eager 属性。

有人知道这个问题的解决方案吗?如果不是,我只是想知道一般使用什么方法让服务器以 json 格式响应相同的加载对象而不更改任何其他内容?

编辑:

抱歉没有提供实际代码,我的情况完全符合jackson - do not serialize lazy objects中的问题。由于这个问题没有解决方案,我强调这个问题,以确保是否有解决方案,或者除了使用 Jackson 以 JSON 格式发送到对象作为响应之外,在这种情况下使用的方法是什么。

谢谢

最佳答案

刚刚回答了您链接的另一个问题,因为它比您的问题早。

回复可见:jackson - do not serialize lazy objects

请将其标记为欺骗并关闭。

关于java - 有没有办法避免 Jackson 序列化未获取的惰性属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26062976/

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