【问题标题】:Documentation - How do I declare a method transient in hibernate hbm.xml file?文档 - 如何在 hibernate hbm.xml 文件中声明方法瞬态?
【发布时间】:2019-12-19 12:53:05
【问题描述】:

我想在休眠实体中声明一个瞬态方法,我们使用 hbm.xml 文件进行映射而不是注释。

我在网上看到很少有人提到在 xml 中声明字段瞬态,使用注释声明方法瞬态,但我找不到在 xml 中声明方法瞬态的文档。我看到有人提到如果它不在 hbm.xml 文件中,Hibernate 会忽略它,但我想确认一下。

这方面的文档在哪里?

【问题讨论】:

标签: java hibernate hibernate-mapping hbmxml


【解决方案1】:

自 Hibernate 5 以来遗留的 XML 映射文档似乎已被删除。但您仍然可以在 Hibernate 4 documentation, section 5 中找到它的文档。

在使用hbm.xml时也是如此,如果不需要映射字段或方法,则不要将其包含在hbm.xml中。我找不到在文档中明确提到这种行为,因为我认为人们回想起只有遗留 XML 映射的时间是一种常识。

并且在引入注解映射之后,引入了映射字段默认自动检测的特性,不需要显式声明所有映射字段。文档中隐含地提到了遗留 XML 和注释映射之间这种行为的差异,如下所示:

您需要决定哪些属性需要在 给定的实体。这在注释驱动之间略有不同 元数据和 hbm.xml 文件。

在注释世界中,每个非静态非瞬态属性 实体的(字段或方法取决于访问类型)是 被认为是持久的,除非您将其注释为@Transient。不是 为您的属性添加注释等同于 适当的@Basic 注释。

【讨论】:

    猜你喜欢
    • 2010-10-08
    • 2016-07-21
    • 2023-03-31
    • 1970-01-01
    • 2015-02-22
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-04-11
    相关资源
    最近更新 更多