问题标签 [mappedsuperclass]

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

hibernate - 如何使用 spring-jpa 创建复合键,其中键的一个属性在 @MappedSuperClass 中,而另一个属性在 @Entity 类中?

我需要创建一个复合键。键的一个属性位于我无法修改的 MappedSuperClass 中。键的另一个属性在派生类中,它是一个实体类。但是,我在执行以下内容时遇到运行时错误,它表示基类的属性(也存在于@IdClass 中)不是实体类(派生类)的属性。请指导我如何处理这种情况。

我收到一条错误消息,提示在“Derived”类中找不到 DerivedPK 中存在的属性“id”。使用的休眠版本是 4.1.1.Final。

0 投票
2 回答
2282 浏览

hibernate - 当@Inheritance(strategy=InheritanceType.TABLE_PER_CLASS) 时为什么@MappedSuperclass 上的ID 相同

我尝试有 2 个表,如下所示:

MISExercise(表)


身份证名称...

2个


MISInteractiveExercise(表)


身份证名称...

1个


他们必须没有相同的 id。他们是从同一个基地继承而来的。我的代码是:

不幸的是,我发现 MISExercise 表和 MISInteractiveExercise 表可以具有相同的 id。当我用谷歌搜索时,我发现http://openjpa.208410.n2.nabble.com/same-Id-on-mapped-superclass-td2435374.html。@Kaayan 似乎有同样的问题。但我无法从该页面获得帮助。

似乎如果我使用@Entity 而不是@MappedSuperclass,那就没问题了。但是为什么,什么是好方法?

0 投票
1 回答
104 浏览

php - Symfony2.4 抽象类回调未触发

我使用一个扩展包含生命周期回调的抽象类的类。我的抽象类用 @ORM\MappedSuperclass 注释,但我的回调没有被触发。我在这里和那里看到了很多关于这个主题的问题,但没有具体的答案。有没有人有真正有效的解决方案?(我指定如果我手动调用我的回调方法一切正常)

此链接上的答案对我不起作用:

不调用具有抽象基类的 Doctrine 2 LifecycleCallbacks

(但问题是一样的)

0 投票
1 回答
1081 浏览

symfony - symfony 部署错误:映射超类

当我在线部署一个包含映射超类实体的 symfony 网站时,我收到以下错误:

最糟糕的是,如果我们使用 web/app.php(调试模式为 true),则不会显示此错误,而如果您使用 web/app_dev.php,它会阻止程序。

我应该补充一点,在本地,使用 web/app.php 或 web/app_dev.php 时不会出现此错误。

有人知道这个黑暗之谜吗?

提前感谢您的任何提示。

0 投票
1 回答
574 浏览

mongodb - Symfony2 MongoDB 学说继承

我遇到了一个我试图理解但徒劳无功的小问题……我有 2 节课。一个是称为“SpecificIndividual”的抽象文档,另一个是称为“Individual”的常规文档。

这就是我想要做的:SpecificIndividual 有一些属性和一些 getter/setter 方法。Individual 继承 SpecificIndividual 并拥有自己的属性和 getters/setters 方法。

我使用具有 COLLECTION_PER_CLASS 类型的 MappedSuperClass 继承。

我的问题是,当我使用“doctrine:mongodb:generate:documents”命令时,它会为抽象类生成所有 getters/setters 方法(这是我想要的),为子类生成所有 getters/setters 方法(这也是我想要什么)但是它将所有抽象类的getter/setter方法复制到子类中(这在继承中根本没有意义)。

我可能做错了什么,因为它在我使用 MySQL 和实体时有效,但是自从我搬到 MongoDB 之后,我找不到正确的方法来做到这一点。

这是我的课程:首先,SpecificIndividual

和子类 Individual :

我指望你们所有人提供帮助!提前致谢。

0 投票
1 回答
1893 浏览

mysql - Java 中的 EBean - 使用 @MappedSuperclass 进行继承

我目前正在 Ubuntu 上使用 Play Framework 2.2.2 编写一个新的 Java 项目。我正在尝试建立一个非常简单的类层次结构,它允许不同的 db-persistable 元素从一个公共 BaseEntity 类继承公共字段,例如 id、created_at、deleted_at 等,以避免重写相同的样板。

我目前正在使用的示例如下所示。

为了进行实验,我创建了一个简单的基类,其中包含一个新属性名称。这编译得很好:

现在,当 BaseEntity 类不包含 name 字段或 getset-ers 时,EBean 可以成功地将 Entity 保存到 db。一旦我添加了带有 getter 和 setter 的字段,在尝试保存实体时 Play 崩溃并出现以下异常:

java.lang.NoSuchMethodError:models.User._ebean_getni_name()Ljava/lang/String; 在models.User._ebean_getField(User.java:1) 在com.avaje.ebeaninternal.server.reflect.EnhanceBeanReflect$Getter.get(EnhanceBeanReflect.java:162) .....

删除 getset-ers 或将它们移动到基类会导致相同的异常。我已经在网上不知疲倦地寻找显示我做错了什么的例子,但还没有找到任何可以修复它的东西。我敢肯定这很简单。任何人都可以帮忙吗?

问候。

0 投票
1 回答
7850 浏览

symfony - Symfony2 MappedSuperClass and doctrine:generate:entities

I have a "Offer" class (MapperSuperclass) and 2 more classes extending it, "PrivateOffer" and "PublicOffer".

The problem I have is, when I run "doctrine:generate:entities" command, both classes "PrivateOffer" and "PublicOffer" are fullfilled with the same properties than the MappedSuperclass "Offer" class, and also it's getter and setter methods.

If I remove them and live them only in the "Offer" class, the "doctrine:schema:update" works well as expected, but I need to run the "doctrine:generate:entities" again so, it ruins everytime my extended classes.

Why is the "doctrine:generate:entities" duplicating all the properties and setter/getter methods in both of the classes, if they extends the MappedSupperclass?

Thank you all :)

OfferClass:

PrivateOfferClass:

PublicOfferClass:

0 投票
1 回答
254 浏览

java - 在 GAE/J 和 JPA 上使用 @MappedSuperclass 时出现“字段 jdoFieldFlags 冲突”

在 GAE/J 上查询由 mappedsuperclass 扩展的实体时出现错误。

映射超类

实体

JPA 查询如下所示。

我得到了错误

消息说“字段 jdoFieldFlags 冲突。”,但任何字段都没有重复,我没有定义 jdoFieldFlags 字段。

为什么会发生此错误?请告诉我如何解决这个错误。

在 EmployeeModel 中定义所有字段而不扩展 AbstractModel 可以消除此错误。但我想避免这种解决方案,因为 AbstractModel 中的字段对我的应用程序中的所有表都是通用的。

[更新] App Engine 版本为 1.9.11,存储为 cloudSQL。表定义如下。

[Update2] 我已将 DataNucleus 更新到 4.0.2 版,但发生了类似的错误。我没有重复的字段和 dnFieldFlags。

0 投票
2 回答
1644 浏览

java - JPA继承-如何选择每种子类型的3个实体?

如果您有这种类型的 JPA 实体设置,其中包含一个超类和几个子类(见下文),您如何编写一个 JPA 查询来选择每个子类的前 3 个(按创建日期排序)?编写两个单独的查询并要求特定的子类可以正常工作,但如果可能的话,我想将其归结为一个查询。

0 投票
1 回答
1211 浏览

java - JPA - 是否可以将结果作为@MappedSuperclass 的实例获得?

关于以下示例,是否可以检索AnsweredQuestion实例列表作为Question的对象?

因为后代类有很多,所以只检索几列对我来说非常重要。我尝试了如下操作,但它仍然返回AnsweredQuestion列表: