繁体   English   中英

为什么在 Java 应用程序中使用 JPA Hibernate Metamodel 类?

[英]Why JPA Hibernate Metamodel classes are used in Java app?

我正在开发一个 Java 应用程序,有几个元模型类,例如“Company_”。 但是,这些都在目标文件夹中,我想知道为什么要使用它们,因为其他文件(例如“公司”)也将在目标文件夹中构建和生成。 那么,在 Java 应用程序中使用 JPA Hibernate Metamodel 类的目的是什么。

任何解释将不胜感激。

那么,在 Java 应用程序中使用 JPA Hibernate Metamodel 类的目的是什么。

为什么我们需要你问的元模型类?

它们是一个内部细节,可以实现标准查询的类型安全。 它们是达到目的的手段。 这就是标准查询的类型安全。 如果这可以通过更简单的方式实现,没有这些额外的类,那么这样做是理想的。 更少的类 -> 使用更少的 RAM -> 更少的类加载 -> 更少的启动时间。

具体来说,这是这样做的动机......

当您编写条件查询或创建动态实体图时,您需要引用实体类及其属性。 最快和最简单的方法是提供所需的名称作为字符串。 但这有几个缺点,例如,您必须在编写查询时记住或查找实体属性的所有名称。 但是,如果您必须重构实体并更改某些属性的名称,它也会在项目的后期阶段引起更大的问题。 在这种情况下,您必须使用 IDE 的搜索功能并尝试查找所有引用已更改属性的字符串。 这是一项乏味且容易出错的活动,很容易占用重构的大部分时间。

您可以在此处查找更多详细信息

如果您想深入了解为什么选择这样的实现来实现这一目标,您可以查看原始Java 规范请求并获得所有详细信息。

这能解决您的问题吗? 在评论中告诉我。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM