[英]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.