问题标签 [hibernate-4.x]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
1 回答
6914 浏览

java - OneToMany - org.hibernate.AnnotationException:mappedBy 引用了一个未知的目标实体属性

我正在尝试使用 OpenXava 中捆绑的 hibernate-tools.jar 从我的域类生成数据库模式。

不幸的是,两个具有OneToMany关联的类给我带来了麻烦。

这是第一个:

这是另一个:

这是引发的异常:

让我指出一些可能的伤害来源:

  1. DeceasedTransferDossier扩展了已具有非抽象getDeceased()访问器的DeceasedDossier
  2. 所有实体都有一个共同的父类,名为Identifiable

    /li>

让我指出,这样的结构已经在 Spring-data + Hibernate 容器中工作,其中成功创建了 DB 模式(Spring-data 3.1.2 + Hibernate 4.1.6)OpenXava 捆绑了旧版本的 Hibernate 和 Hibernate 工具,因此我尝试手动调整它,将其更新为:

  • Hibernate Tools 4.0.0.CR1(我可以在 Maven 存储库中找到的最新版本);
  • Hibernate 4.0.0.Final(Hibernate Tools 4.0.0.CR1 依赖的版本);
  • 并更新所有必要的级联依赖。

我希望这样的更新可以解决我的问题,但不幸的是,org.hibernate.AnnotationException 保持不变。

0 投票
0 回答
775 浏览

spring-mvc - 如何为 Hibernate 4 Spring 3 和 Spring security 3 添加兼容的依赖项

我很难找到正确版本的库,我正在使用 Hibernate4 和 spring 3 以及 spring security。我已经多次更改版本以匹配它们,但我收到了几个错误,hibernate4 错误,spring core 错误......,无论如何这是我没有 SpringSecurity 的 pom 工作 pom

当我添加以下 Spring 安全依赖项时,出现此错误:描述资源路径位置类型构建路径不完整。找不到 org/springframework/beans/factory/Aware servlet-context.xml 的类文件 ..../webapp/WEB-INF/spring/appServlet 第 20 行 Spring AOP 问题

0 投票
0 回答
322 浏览

java - Hibernate 4.x/JPA 2 不再支持声明性事件侦听器注册?

我注意到当前的 Hibernate 4.2.x 用户指南和文档没有提到在 persistence.xml 文件中声明侦听器的任何方式。回到 JPA 1.0,我们可以使用以下属性:

似乎在 JPA 2/Hibernate 4 上,只能使用org.hibernate.integrator.spi.Integrator以编程方式注册事件侦听器。这是真的?监听器的声明式注册是否已被弃用?

0 投票
2 回答
7263 浏览

hibernate-4.x - 有没有办法将 Hibernate 4.2.2 与 Java EE 7 和 Glassfish 4 一起使用?

我使用 Java EE 7 和 Hibernate 4.2.2 和 Glassfish 4 做了一个小型测试项目。

这是我的 pom.xml (网络)

ejb

它只有一个名为 Student 的实体。还有一些带有列表、创建和编辑的杂乱页面。我可以编译和部署,但是当我尝试打开列表列表页面(由 netbeans 7.3.1 生成的所有页面,带有从实体模型生成 JSF 页面的选项)时,我收到了一个错误:

(...)

如果我将 persistence.xml 更改为 Eclipse 链接,它可以正常工作。但是我回滚到休眠状态。我得到了这个错误。

我用谷歌搜索了很多,但我找不到任何信息,因为 Java EE 7 是一项新技术。

0 投票
1 回答
48 浏览

java - 以通用(间接)方式枚举和更改持久字段

在 Hibernate 4.x 中,有没有办法在运行时获取持久字段列表?持久性字段不是指 DB 列名,而是 POJO 字段名或属性名(取决于特定实体的访问类型)。此外,是否有一种方法可以获取/设置给定字段名称作为字符串的持久字段的值,无论它是字段名称还是属性名称?

0 投票
1 回答
837 浏览

mysql - Hibernate 4 + Spring 3.2 + 事务管理器 + Mysql 中没有回滚

我需要一些帮助。我在使用休眠和弹簧的事务时遇到问题。我正在尝试填写 mysql 中的文件表。我的第一个插入效果很好,第二个不起作用(但这是正常的......)。但是第一个插入的数据仍然存在于表中。这不符合交易的概念。我可以吗?

我认为第二次尝试在数据库中插入损坏的数据时应该执行回滚(损坏的数据是指与字段约束不匹配的数据) insert 应该是回滚的,并且表中不应存在任何数据。或者事实并非如此。第一个数据,来自第一个插入仍然在表中。它不应该仍然存在吗?

我试图查看已检查/未检查的异常内容,@transactionnal 的错误配置但没有成功...

如果你有任何想法...

谢谢 !!

主.java:

FileBoImpl.java

休眠.xml:

在 applicationContext.xml 中调用的 Beans.xml 也带有 Hibernate.xml :

0 投票
0 回答
1112 浏览

java - 如何在 hql 中比较 joda Datetime

考虑这个休眠字段:

我想像这样运行 hql 查询:

这里的highestTicketCommentDate 也是一个joda DateTime。但我得到了错误的结果。比较 hql joda datetime 的正确方法是什么?任何帮助,将不胜感激。

提前致谢

0 投票
1 回答
827 浏览

persistence - 休眠中的 javax.persistence.PersistenceException

我已经从数据库生成了 POJO 和相应的 hbm.xml 映射文件。我想测试这是否正常工作,所以我创建了一个简单的 HelloWorld,它读取一个表中的所有数据并打印出来。当我尝试运行它时,会抛出 PersistenceException。这是我的堆栈跟踪:

我直接从 Eclipse Kepler 将应用程序部署到 Glassfish 3 服务器。但是,当我使用 Maven 打包和部署应用程序时,也会出现此问题。

这是我的persistence.xml:

每个 POJO 类在类定义之前还有以下注解:

我不认为这些是必要的,所以我尝试删除它们,但这会导致各种问题,所以我认为这不是要走的路:p

编辑:它现在有效,请参阅答案,但我不知道为什么。Hibernate 不再检测 hbm.xml 映射数据,因此,由于 POJO 类不包含任何映射数据,它应该无法从数据库中获取数据:-/。

0 投票
3 回答
1645 浏览

java - 运行 jsp 文件时出错。因为这个动态 Web 项目是使用 strut2 spring3 hibernate4 完成的

实际上,我正在尝试使用 Spring3 和 Hibernate4 来实现 Struts2。当我启动 Apache Tomcat 服务器并运行该index.jsp文件时,它给了我以下错误。

请帮助我。我是这个主题的初学者。请帮助我的朋友。

在我在 WEB-INF/lib 中添加了所有相关的 jar 文件后,它显示了一些其他错误,如下所示

web.xml 文件

0 投票
2 回答
4301 浏览

jodatime - 为 Hibernate 4 将 Joda-Time 转换为 Jadira

我收到了一个遗留的 Spring Hibernate DAO 项目,它是 Spring 3.2.0 和 Hibernate 3.5。我将它在上游转换为 Spring 3.2.3.RELEASE 和 Hibernate 4.2.3.Final。

问题是他们使用 Joda-Time 将日期/时间保存到数据库,但从我在这里读到的内容来看,joda-time-hibernate 1.3 不适用于 Hibernate 4,而仅适用于 Hibernate 3。所以,我查看了推荐的库并花了很多时间将 Joda.DateTime 转换为 jadira.PersistentDateTime,但我发现 Jadira ... 恕我直言并不能很好地满足我的需求。是的,我可以从数据库中提取对象,这些是 Jadira PersistentDateTime 字段,效果很好。

但是,我们有很多很多很多与 joda-time 一起使用的日期计算,其中一个用于添加天数、移动天数、天数之间的差异、计算之前、之后,等等。

所以......我想知道......我可以将 joda.DateTime 转换为 jadira.PersistentDateTime 吗??我还发现 Jadira 的文档不存在,我发现那里几乎没有好的文档。如果有人可以向我指出这个文档,那就太好了。

另一方面,由于我现在使用的是 Hibernate 4,所以我认为只为我的持久对象使用标准的 java.util.Date 没有问题。

我应该坚持使用 jadira,值得吗?还是应该将标准可靠的 java.util.Date 与 GregorianCalendar 一起使用?我倾向于后者,因为它应该比一些异国情调的第三方包更稳定和可靠。

谢谢!汤姆