问题标签 [hibernate-annotations]

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 回答
5324 浏览

java - 在休眠中使用共享外键列映射两个实体

我有四个实体要映射在一起,“Association”、“Account”、“Transaction”和“TransactionEvent”。Association 的 id 是一个简单的整数 id。Account 和 Transaction 每个都有嵌入的 id,由一个到 Association 的映射和一个数字组成。

TransactionEvent 应该有一个嵌入的 id,由一个 Account 和一个 Association 组成。现在,它们中的每一个都映射到一个关联,我希望它与一个 TransactionEvent 的关联相同。

JPA Annotations 用于 Hibernate 映射,但我无法完成这项工作。我尝试为关联键强制使用相同的列名,但 Hibernate 抱怨重复的列。

这有可能解决吗,还是我没有直接思考?

这是带注释的类,但我从 javax.persistence 命名空间中删除了 getter/setter 和非 id 列、注释:

实际的 Account、Transaction 和 AccountEvent 实体在表单上

0 投票
2 回答
3703 浏览

java - Hibernate - OneToMany - 多列

我有这两张表老师和联系人,一个老师可以有 x 个联系人。所以在这里我们正在查看@OneToMany 关联。

表结构:

用户 [userid, username, email,...]
联系人 [contactid, contactname, ref, reftype,...]

我想从我的用户类中加载所有用户的联系人。为此,我会做一个类似的查询

8240 是一个随机用户 ID,引用类型 T 是教师。由于此联系人表也用于学校联系人和/或我们可能拥有的任何其他类型的客户。问题是我不知道如何用 Hibernate 做到这一点。 我应该使用 embedbedId 吗?还是一个 JoinColumns?

到目前为止,我所做的是将我的老师与联系人联系起来,contact.ref=teacher.teacherid但我想要的是:

我怎么做?

这是我的代码 Teacher.class

联系人.class

0 投票
1 回答
14787 浏览

hibernate - 如何让 Hibernate 调用我的自定义 typedef?

我正在尝试定义一个 CompositeUserType 来处理我的 JPA/Hibernate 应用程序中的特定类型。我有一个名为 ApplicationMessageType 的 CompositeUserType,旨在处理我的映射。

根据我所读到的,我应该能够在包含 TypeDefs 的域层次结构中创建一个 package-info.java 类。我的看起来像这样:

如果我理解正确,我在 TypeDef 中使用 defaultForType 参数这一事实,每当我尝试保存或加载 ApplicationMessage 时,都应该调用自定义类型代码。

我在 ApplicationMessageType 类中的每个方法上都设置了断点,但它们都没有 被调用。

有谁知道我哪里出错了?代码可以编译,但似乎从未调用 TypeDef 注释来注册 ApplicationMessageType。

任何指针将不胜感激......

谢谢

0 投票
1 回答
15965 浏览

java - 如何映射地图

我试过

但它会产生错误:

任何的想法?

0 投票
1 回答
1163 浏览

sql - 如何找到要为测试数据删除的表的依存关系顺序列表?

我有一个测试套件,需要为系统中的大量(但不是全部)表删除本地 MySQL 测试实例中的任何现有数据。

当然,customer它有不少外键,所以我还必须删除更多的表......

再一次,这些表有更多的外键......

等等等等令人作呕。为了编写测试设置,不得不在精神上浏览整个数据模型是令人沮丧的。

我正在使用 Hibernate,所以我想知道是否有某种方法可以自动获取表的优先顺序列表,以便可以直接将其传递给删除处理程序。理想情况下:

是否有一个 Hibernate 实用程序可以做到这一点?我打算写一些遍历我们域的注释和派生表名的东西,但是对于一个相当普遍的问题似乎需要做很多工作。谢谢!

0 投票
3 回答
33549 浏览

java - Hibernate:在我的类中添加一个未映射到数据库表的属性

我有一个tbl_sky有 2 个属性的表,namemodel会使用 Hibernate 注释,例如;

但是我需要再添加一个status在表中不存在但在类中需要的属性。我怎样才能声明该属性,以便我在我的班级中拥有它而不是在我的数据库表中?

感谢所有帮助。

0 投票
3 回答
143689 浏览

java - mappedBy 引用了一个未知的目标实体属性

我在带注释的对象中设置一对多关系时遇到问题。

我有以下内容:

那么这个

和这个

我在这里做错了什么

0 投票
2 回答
6226 浏览

hibernate - Maven + Hibernate 注释模式生成

我有一堆用休眠注释注释的类。我正在使用 Maven、Hibernate 和 Spring。如何使用 hibernate3-maven-plugin 的 hbm2ddl 生成数据库模式?

0 投票
1 回答
1351 浏览

java - 返回地图在 Hibernate Annotation 中有条件

我有一个包含以下列的表格:

targetcolumn 是以下值之一的字符串表示形式:预测、实际、更新

我想在 Job 类中添加方法:

Map<AudienceGroup, Integer( this it the rating)> getAudienceRatingPerPredictedPrograms().

我被注释困住了。我如何告诉它返回映射目标中的值是“预测的”?

0 投票
1 回答
134 浏览

java - 根据列值检索子类的集合

标题有点奇怪,让我澄清一下。

我有两个对象,车库和车辆,是一对多的关系。有多种类型的车辆,例如轿车和卡车;该类型作为字符串保存在 Vehicle 表中。

这是两个类:

为了区分车辆的类型,目前我们必须查看类型列并使用枚举。我想做的是拥有 Vehicle 的子类,例如 Car 和 Truck,来表示不同的类型,而不是依赖于 Type 字段。然后我的代码instanceof可以确定类型而不是使用该字段。

但是,我不知道如何告诉 Hibernate 如何根据 Type 列的值来实例化子类,或者它是否可以。

我会很感激你们能提供的任何帮助。提前致谢!