hibernate 4.3.x - 加载所有实体注释类

2023-11-26

在我从事的项目中,我不使用 Spring,仅使用 Hibernate。我不想使用 hbm.xml 文件进行实体映射/描述/等。我只想使用注释。

我如何告诉 Hibernate 加载所有内容Entity/Table来自某些包的带注释的类?

我在网上搜索但没有运气。另外,我没有找到有关最新 Hibernate 版本的信息(主要是过时的文章/帖子/等)。

Edit 1:

http://docs.jboss.org/hibernate/orm/4.3/manual/en-US/html_single/#mapping

hibernate 文档页面是这样说的:

对象/关系映射可以通过三种方法定义:
1)使用Java 5注释(通过Java Persistence 2注释)
2)使用JPA 2 XML部署描述符(在第XXX章中描述)
3) 使用 Hibernate 遗留 XML 文件方法(称为 hbm.xml)

就是这样,我只想将 1) 与 SessionFactory/Session Hibernate API。

Edit 2:

尽管我的问题被标记为重复,但事实并非如此,因为我不想使用 JPA(和隐含的描述符),而只想使用上面列出的方法 1)。


好吧,这在 Hibernate 4.3.x 中是不可能的,而且似乎永远不可能。

另请参阅这个问题/答案(尽管这篇文章很旧,但它非常有效):
通过添加某个包中的所有类来在 Hibernate 中添加带注释的类。爪哇

1)在我对此进行了一些研究之后,似乎这是一个常见的误解Configuration.addPackage允许我们从给定的包中加载所有实体类。这不是真的。我通过查看休眠源代码发现了这一点,然后我才发现上面的问题/答案证实了这一点。事实上我不太确定什么addPackage确实如此,但它似乎对我的情况不太有用。

2)似乎我们能做的一件事就是打电话Configuration.addAnnotatedClass对于我们自己的每个带注释的实体类,例如通过在编译时对这些类进行硬编码。或者...或者使用反思 or Guava我们可以在运行时动态地从给定包中找到所有(即我们自己的)实体类,循环遍历它们,并且仍然调用Configuration.addAnnotatedClass。 Reflections 的唯一问题是它有很多自己的依赖项。因此,如果我们决定使用 Reflections,我们必须为这个简单的事情添加 9 个新的 JAR(多么痛苦)。使用 Guava 会更容易一些,我们只需调用
ClassPath.from ( Thread.currentThread().getContextClassLoader() ). getTopLevelClasses(pckg).

如果有人有更好的方法 - 请随时提供。
我会接受最佳答案,不一定是我的答案。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

hibernate 4.3.x - 加载所有实体注释类 的相关文章

  • 如何通过 javaconfig 使用 SchedulerFactoryBean.schedulerContextAsMap

    我使用 Spring 4 0 并将项目从 xml 移至 java config 除了访问 Service scheduleService 带注释的类来自QuartzJobBean executeInternal 我必须让它工作的 xml 位
  • Java 枚举与创建位掩码和检查权限的混淆

    我想将此 c 权限模块移植到 java 但是当我无法将数值保存在数据库中然后将其转换为枚举表示形式时 我很困惑如何执行此操作 在 C 中 我创建一个如下所示的枚举 public enum ArticlePermission CanRead
  • 使用 LinkedList 实现下一个和上一个按钮

    这可能是一个愚蠢的问题 但我很难思考清楚 我编写了一个使用 LinkedList 来移动加载的 MIDI 乐器的方法 我想制作一个下一个和一个上一个按钮 以便每次单击该按钮时都会遍历 LinkedList 如果我硬编码itr next or
  • .properties 中的通配符

    是否存在任何方法 我可以将通配符添加到属性文件中 并且具有所有含义 例如a b c d lalalala 或为所有以结尾的内容设置一个正则表达式a b c anything 普通的 Java 属性文件无法处理这个问题 不 请记住 它实际上是
  • 为 java 游戏创建交互式 GUI

    大家好 我正在创建一个类似于 java 中的 farmville 的游戏 我只是想知道如何实现用户通常单击以与游戏客户端交互的交互式对象 按钮 我不想使用 swing 库 通用 Windows 看起来像对象 我想为我的按钮导入自定义图像 并
  • 动态选择端口号?

    在 Java 中 我需要获取端口号以在同一程序的多个实例之间进行通信 现在 我可以简单地选择一些固定的数字并使用它 但我想知道是否有一种方法可以动态选择端口号 这样我就不必打扰我的用户设置端口号 这是我的一个想法 其工作原理如下 有一个固定
  • 如何在 Spring 中禁用使用 @Component 注释创建 bean?

    我的项目中有一些用于重构逻辑的通用接口 它看起来大约是这样的 public interface RefactorAwareEntryPoint default boolean doRefactor if EventLogService wa
  • 在 Jar 文件中运行 ANT build.xml 文件

    我需要使用存储在 jar 文件中的 build xml 文件运行 ANT 构建 该 jar 文件在类路径中可用 是否可以在不分解 jar 文件并将 build xml 保存到本地目录的情况下做到这一点 如果是的话我该怎么办呢 Update
  • 将 MOXy 设置为 JAXB 提供程序,而在同一包中没有属性文件

    我正在尝试使用 MOXy 作为我的 JAXB 提供程序 以便将内容编组 解组到 XML JSON 中 我创建了 jaxb properties 文件 内容如下 javax xml bind context factory org eclip
  • 在 junit 测试中获取 javax.lang.model.element.Element 类

    我想测试我的实用程序类 ElementUtils 但我不知道如何将类作为元素获取 在 AnnotationProcessors 中 我使用以下代码获取元素 Set
  • 帮助将图像从 Servlet 获取到 JSP 页面 [重复]

    这个问题在这里已经有答案了 我目前必须生成一个显示字符串文本的图像 我需要在 Servlet 上制作此图像 然后以某种方式将图像传递到 JSP 页面 以便它可以显示它 我试图避免保存图像 而是以某种方式将图像流式传输到 JSP 自从我开始寻
  • 如何在用户输入数据后重新运行java代码

    嘿 我有一个基本的java 应用程序 显示人们是成年人还是青少年等 我从java开始 在用户输入年龄和字符串后我找不到如何制作它它们被归类为 我希望它重新运行整个过程 以便其他人可以尝试 的节目 我一直在考虑做一个循环 但这对我来说没有用
  • tomcat 中受密码保护的应用程序

    我正在使用 JSP Servlet 开发一个Web应用程序 并且我使用了Tomcat 7 0 33 as a web container 所以我的要求是tomcat中的每个应用程序都会password像受保护的manager applica
  • 如何在谷歌地图android上显示多个标记

    我想在谷歌地图android上显示带有多个标记的位置 问题是当我运行我的应用程序时 它只显示一个位置 标记 这是我的代码 public class koordinatTask extends AsyncTask
  • 在我的 Spring Boot 示例中无法打开版本 3 中的 Swagger UI

    我在 Spring Boot 示例中打开 swagger ui 时遇到问题 当我访问 localhost 8080 swagger ui 或 localhost 8080 root api name swagger ui 时出现这种错误 S
  • java.io.Serialized 在 C/C++ 中的等价物是什么?

    C C 的等价物是什么java io Serialized https docs oracle com javase 7 docs api java io Serializable html 有对序列化库的引用 用 C 序列化数据结构 ht
  • 最新的 Hibernate 和 Derby:无法建立 JDBC 连接

    我正在尝试创建一个使用 Hibernate 连接到 Derby 数据库的准系统项目 我正在使用 Hibernate 和 Derby 的最新版本 但我得到的是通用的Unable to make JDBC Connection error 这是
  • Android:无法使用 DbHelper 和 Contract 类将数据插入 SQLite

    public class Main2Activity extends AppCompatActivity private EditText editText1 editText2 editText3 editText4 private Bu
  • Spring Rest 和 Jsonp

    我正在尝试让我的 Spring Rest 控制器返回jsonp但我没有快乐 如果我想返回 json 但我有返回的要求 完全相同的代码可以正常工作jsonp我添加了一个转换器 我在网上找到了用于执行 jsonp 转换的源代码 我正在使用 Sp
  • Java中super关键字的范围和使用

    为什么无法使用 super 关键字访问父类变量 使用以下代码 输出为 feline cougar c c class Feline public String type f public Feline System out print fe

随机推荐

  • Android中如何设置按钮点击效果?

    在Android中 当我为按钮设置背景图像时 单击它时看不到任何效果 我需要在按钮上设置一些效果 以便用户可以识别出该按钮被单击 单击该按钮后 该按钮应变暗几秒钟 这个怎么做 这可以通过创建一个包含按钮状态列表的可绘制 xml 文件来实现
  • 箭头函数内的 async/await (Array#map/filter)

    我在此代码中遇到编译时错误 const someFunction async myArray gt return myArray map myValue gt return id my id myValue await service ge
  • 角度路由 - 重定向到外部站点?

    在 AngularJS 路由文件中 有一个选项otherwise路由 替换 404 routeProvider when otherwise redirectTo my path 有没有办法做到这一点 以便重定向到不在应用程序中的页面 我试
  • 保持终端焦点

    我有一个 python 脚本 它使用 selenium 来自动化网页 将焦点从需要用户输入的终端上移开 python 中是否有以编程方式将焦点切换回终端的方法 如果重要的话 我将在 Windows 7 上的 Windows 命令提示符中运行
  • 长周期区块应用

    我的应用程序中有以下循环 var maxIterations Int 0 func calculatePoint cn Complex gt Int let threshold Double 2 var z Complex init re
  • const 的用处 (C++)

    我是一个 const 恶魔 我努力让一切尽可能 const 我尝试查看 const 和非 const 版本函数的各种反汇编输出 但尚未看到明显的改进 我假设现在的编译器能够使用非 const 函数来完成聪明的事情 而这些函数在技术上可能是
  • 从长到宽,重复两次测量

    我知道这个问题已经在 从长到宽 的标题下被问过很多次了 但我遇到了一种情况 我有两个重复测量的值变量 id sex time score1 score2 1 subject 1 m Time1 0 20926263 0 2499310 2
  • winutils.exe chmod 命令未设置权限

    gt D gt echo HADOOP HOME gt D Apps winutils hadoop 2 7 1 在与 HADOOP HOME 相同的磁盘上创建 tmp hive 文件夹 D gt dir tmp hive Director
  • 为什么 Jetpack Compose Preview 不显示任何内容?

    我正在使用 Jetpack Compose 预览仅显示标题 但如果我使用 dev13 版本 它工作正常 IDE Android Studio 4 2 Canary 7撰写 0 1 0 dev17 这是一个已知问题 它应该在 Android
  • Django 管理,自定义错误消息?

    我想知道如何在 Django 管理中显示错误消息 我的网站上有一个私人用户部分 用户可以在其中使用 点 创建请求 一个请求从用户的帐户中获取 1 或 2 个积分 取决于请求的两种类型 因此如果帐户有 0 个积分 则用户无法发出任何请求 在私
  • 无法加载文件或程序集“xxxx”或其依赖项之一。该系统找不到指定的文件

    在 VS2005 中 我们整个编程人员都收到此错误消息零星地它总是在贝尼控制项目 此错误消息每天会发生多次 并且在进入控件的设计模式时会发生 通常重建贝尼控制解决了问题 但有时必须重建整个解决方案 还有其他人解决了这个问题吗 有哪些建议或网
  • 在 ncurses 中捕获 control+key 的正确方法

    在 ncurses 中捕获 control key 的正确方法是什么 当前我正在这样做定义控制 如下所示 define ctl x x 0x1f 它工作正常 但问题是我无法同时捕获 C j 和 ENTER 这是因为 j 106 110101
  • java中可以连续分配对象吗?

    假设我有一大堆相对较小的对象 我需要经常迭代它们 我想通过提高缓存性能来优化我的迭代 所以我想分配物体 而不是引用 在内存上连续 所以我会得到更少的缓存未命中 并且整体性能可能会明显更好 在 C 中 我可以只分配一个对象数组 它会根据我的需
  • 为什么可以在持久卷上设置多个访问模式?

    例如在下面的例子中 apiVersion v1 kind PersistentVolumeClaim metadata name exmaple pvc spec accessModes ReadOnlyMany ReadWriteMany
  • 如何在 Java 程序中运行 Java 源代码

    我写了一些代码来编译Java源代码 然后它会生成 class 文件 问题是我该如何运行它 例如 我可以设置程序和类的名称 我使用了 prog p new prog 但是在这种情况下 类文件在编译之前还不存在 不太确定该怎么做 有人可以给我建
  • Oracle 何时/为何将 NaN 添加到数据库表中的行

    我知道 NaN 代表非数字 但是 我很难理解 Oracle 何时以及为何将其添加到一行中 是遇到小于 0 的值 如负数 还是垃圾值时 从文档中 Oracle 数据库数字数据类型存储正负定点和浮点数 零 无穷大以及作为未定义运算结果的值 不是
  • iPhone 上的 JSON POST 请求(使用 HTTPS)

    我托管了一个 WCF 服务 并且尝试在 iPhone 应用程序中将其用作 JSON POST 请求 我计划稍后使用 JSON 序列化器 但这就是我的请求 NSString jsonRequest username user password
  • 精确检查一个布尔选项集

    嗯 这有点hacky function b2n boo return boo 1 0 if b2n opt1 b2n opt2 b2n opt3 1 throw new Error Exactly one option must be se
  • Android Studio 无法与 HoloEverywhere 和 ActionBarSherlock 配合使用

    我能够将 ActionBarSherlock 和 HoloEverywhere 导入 Android Studio 但无法编译我的应用程序 截屏 https docs google com file d 0BwOn70drOiMfZHZVe
  • hibernate 4.3.x - 加载所有实体注释类

    在我从事的项目中 我不使用 Spring 仅使用 Hibernate 我不想使用 hbm xml 文件进行实体映射 描述 等 我只想使用注释 我如何告诉 Hibernate 加载所有内容Entity Table来自某些包的带注释的类 我在网