问题标签 [joined-subclass]

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

c# - 休眠或替代

我对 NHibernate 很陌生,我遇到了这个问题,我需要扩展表中的两列出现在<joined-subclass>我的 NHibernate 映射中,但是我很难找到合适的实现。

下面是我的实现的简化版本,我最初认为这是完成我需要的方法,但 NHibernate 不允许<join><joined-subclass>.

有没有对 NHibernate 有更多经验的人知道完成我需要的方法?

我最近一直在这里使用这个 NHibernate 资源,但它并没有证明对这种困境非常有用。

任何可以指出我的提示或资源将不胜感激。

谢谢你。

0 投票
0 回答
60 浏览

hibernate - 如何指定哪个类应该扩展 MappedSuperclass

我有如下描述的类结构:

这个结构用db结构表示:
table B (id, revision); table C (id, dtype);

但我想有这样的结构:
table B (id); table C (id, dtype, revision);

是否可以定义这种行为?

0 投票
1 回答
244 浏览

hibernate - 当我在 Hibernate 中使用单向一对多和 Table Per Class InheritanceType 时出现问题

我有一个类Person和一个包含三个类的类层次结构,当我将 InheritanceType.TABLE_PER_CLASS 用于类层次结构时,它遇到了“批量更新”问题。请看下面的代码。AbstractBase是类层次结构的基类。

测试代码:

输出:

org.hibernate.StaleStateException: Batch update returned unexpected row count from update [0]; actual row count: 0; expected: 1"

Manager我通过hibernate sql发现Hibernate没有更新表。当我将 InheritanceType 更改为 时InheritanceType.JOINED,代码运行良好。我错过了单向一对多配置中的某些内容吗?

- - - - - - - - - - - - - - - - - 更新 - - - - - - - - -----------------

在“Person”类中,我在一对多注释中将@JoinColumn 更改为@JoinTable,测试代码运行良好。当@JoinColumn 的目标类被“InheritanceType.TABLE_PER_CLASS”注解时,是否有遗漏配置?

请看下面的详细注释:

- - - - - - - - - - - - - - - - - - -更新 - - - - - - --------------------

我用 Hibernate 5.2.5 Final 尝试了代码,问题仍然存在。

0 投票
0 回答
776 浏览

java - Hibernate Joined继承:仅从子表中按ID查询记录

我有一个类的层次结构,如下所示:

我想通过 ID 使用通用方法从适当的表中获取用户(普通学生或学士),如下所示:

这种方法可以是

问题是当我在数据库中保存一个单身汉对象时,hibernate 也会将单身汉的 id 保存到“学生”表中,所以当我从数据库中获取通过继承类的整个列表的数据时,查询会从表学士表中返回记录,并从表学生中记录,因为两者都包含必需的学生证。

我尝试使用 InheritanceType Table_Per_class 但在这种情况下,hibernate 不会为表 BachelorExam 中的学士学位创建外键。

我怎样才能通过 id 只接收来自表单身汉的记录?

谢谢!

0 投票
3 回答
14005 浏览

java - 如何访问 JPA 中的鉴别器列

我有DisseminationArea以下Feature代码的子类:

不幸的是,当将此实体保存到数据库时,这会导致异常,因为subtype_id字段被使用了两次。

我可以以某种方式对其进行注释,以便 JPA 知道它是同一个字段吗?

0 投票
0 回答
377 浏览

java - Hibernate: Problems using PolymorphismType.EXPLICIT and InheritanceType.JOINED

I'm trying to get some entities inheritance to behave as I understand the docs. Here is what I understand from hibernate javadoc, hibernate user guide, or this question:

Having this inheritance schema:

  • When I query Parent, I get only data from the supertype.
  • If I want to get data from a Child along with the supertype's one, I have to query the subtype directly.

I find very interresting the fact that I can store most commonly used fields into the supertype, so I can make big queries on the Parent without joins and smaller queries on the Childs.

The problem is that Hibernate keeps fetching Child with join when I query Parent:

And thus, either using Jpql or Criteria:

or

We made a dummy project to illustrate and reproduce the problem.

I realize that this question might seem like a replicate of this one, but why would PolymorphismType.EXPLICIT exist if hibernate does an IMPLICIT join either way ?

0 投票
0 回答
187 浏览

hibernate - 子类中的休眠过滤器

我有超级模型Animal ,它有像CatDog这样的子类 。我在 hbm 文件中定义了带有鉴别器的CatDog子类。现在我想加载所有动物并通过 dao 启用休眠过滤器,但每个子类都有不同的过滤条件。

示例 hbm 文件

每个子类和加入的子类都有休眠过滤器定义吗?有替代解决方案吗?

0 投票
1 回答
18 浏览

java - 有没有办法与实体继承建立双向关系。在 JPA 中加入判别器值?

我有一个 ValuedCustomer 和 Order,我想在 hibernate 中建立双向关系。我该怎么做呢?谢谢

0 投票
0 回答
26 浏览

java - 继承加入策略 - 如果主键也是外键,应用程序崩溃

当父类的主键也是另一个类的外键时,我在实施联合继承策略时遇到了麻烦。

这是父类:

这是子类:

这是父类主键引用的第三类:

我认为问题出在外键上,因为如果我将父类的 @Id 类型修改为 int,则一切正常。

最后,这是我用来检索 SessionFactory 实例的 bean。如果我从带注释的类列表中删除子类,应用程序不会失败,但显然不能按预期工作。

这是错误堆栈跟踪:

任何帮助将不胜感激,在此先感谢!

0 投票
0 回答
12 浏览

java - 我可以按类型搜索子类而不使用 Hibernate 加入每个子类表吗?

我正在使用弹簧数据 jpa。我将 InheritanceType.JOINED 用于我的继承策略。假设我有以下实体关系:

每个动物都有一个“类型”列,其中填充了类的名称。

如何在不加入每个子类表的情况下查询动物类型的某些子集?例如,如果我想检索所有牛和猪,但不检索任何猫。

我已经尝试过@Query("select a from Animal where a.type in (Cow, Pig)"),但这仍然会在 Cat 表上执行 LEFT JOIN,这是不可取的。

有一些解决方法吗?