Jackson 未对 JPA id 字段进行序列化

Posted

技术标签:

【中文标题】Jackson 未对 JPA id 字段进行序列化【英文标题】:JPA id field is not seralized by Jackson 【发布时间】:2015-11-19 01:40:45 【问题描述】:

我在使用 Spring + JPA REST 服务应用程序时遇到了一个奇怪的问题。当我将 JPA 实体作为 JSON 对象返回时,@Id 注释字段在每个请求的响应中都会被忽略。几个小时前它还在工作,我不确定发生了什么变化。我找不到任何有类似问题的博客文章。任何帮助将不胜感激。

【问题讨论】:

发布***.com/help/mcve 问题 嗯,我理解你的反对票,但我知道如果有人知道答案,就不需要更多细节了,我考虑过这一方面。 【参考方案1】:

这是对 Spring-data-rest 的传递依赖,它不会让 Jackson 序列化 @Id s。删除后,它就可以正常工作了。

【讨论】:

以上是关于Jackson 未对 JPA id 字段进行序列化的主要内容,如果未能解决你的问题,请参考以下文章

Jackson 在序列化时触发 JPA Lazy Fetching

jpa oneToMany和jackson序列化问题(新手)

如何使用 Jackson json 注释枚举字段以进行反序列化

在 Spring Boot 应用程序上保留 JPA(加上 Jackson)中的“计算”字段

Spring Boot 2. Jackson json 序列化或 Spring Data JPA FetchType.Lazy

Jackson - 自定义反序列化器不会读取 JSON 中的所有字段