【问题标题】:Create save-only property in JPA/Hibernate在 JPA/Hibernate 中创建只保存属性
【发布时间】:2025-12-02 16:10:02
【问题描述】:

我正在向现有 DTO 添加一个属性。该属性旨在仅从数据库中使用。这意味着它只会被存储。在我们的应用程序中不会使用它。我们的产品负责人需要做报告。我想让它只存储,即存储但从不从数据库中检索。 JPA/Hibernate 有这样的机会吗? 感谢您的帮助!

【问题讨论】:

  • 没明白你的意思吗?你真正想达到什么目的
  • @Akshay 我想将一个属性存储到数据库中,但应用程序永远不会检索它。
  • 好的..它很容易实现。只需制作一个 PoJo 类映射它并且永远不要调用它。只需存储它..就像保持设置并且永远不要调用 get..希望你明白了
  • @Akshay 谢谢,我今天只是愚蠢。我刚刚实现了它。惰性获取类型 + 没有 getter

标签: hibernate jpa orm persistence hibernate-mapping


【解决方案1】:

只为该特定属性添加 setter,但从不添加 getter。 还要考虑到 xml 或 json 的对象序列化,注意排除该特定字段被序列化。

【讨论】:

  • 是 + 延迟抓取
【解决方案2】:

其实,答案太简单了。我最终没有为该属性添加 getter 并在该属性上指定 @Basic(fetch = FetchType.LAZY)

更新:它仅适用于 getter。

【讨论】: