問題タブ [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 に答える
2528 参照

hibernate - Hibernate 4:HQLと継承-コレクションとjavassistのフェッチ

私はこのシナリオを持っています:親クラスPerson、子クラス:個人と企業。私はこのクラスを次のような結合サブクラス戦略でマッピングしています:

この単純なHQLを使用して個人のリストをロードすると、次のようになります。

hibernateはポリモーフィズムを解決し、IndividualsオブジェクトとEnterprisesオブジェクトのリストを取得します。

しかし、私が住所と電話を含めると:

hibernateは、IndivualクラスとEnterpriseクラスの特定のプロパティにアクセスできないPerson _ $$_javassist_5オブジェクトのリストを返します。

これは予想される動作ですか?どうすればこれを解決できますか?

前もって感謝します。

編集:

AddressクラスとPhoneクラスのマッピングを含めましたが、そのIDは複合であり、Hibernateによって生成されたjavassistプロキシの理由のようですが、プロキシがポリモーフィズムを正しく解決しないのはなぜですか?hibernateがデータベースからすべてのデータを取得する場合でも。

私のJSFページはjavax.el.PropertyNotFoundExceptionエラーをスローします:クラス'test.Person _ $$_javassist_5'にはプロパティ'nameIndividual'がありません。

0 投票する
1 に答える
697 参照

hibernate - サブクラスの問題を参照するために Hibernate でエイリアスを作成する

多くのサブクラスのプロパティで検索する基準を構築するために、いくつかのエイリアスを作成しようとしています。これが私のモデルです:

次のように、個人と組織のエイリアスを作成しようとしています。

しかし、私はエラーが発生しています:

この問題を解決するための助けはありますか? サブクラスのプロパティにアクセスするために、サブクラスを参照するエイリアスを作成する方法を知りたいだけです。

ありがとう!

0 投票する
1 に答える
144 参照

asp.net-mvc-3 - Nhibernate の関連エンティティは、結合されたサブクラスの新しいアイテムと共にデータベースに既に保存されています

状況は次のとおりです。データベースに「Entidade」というテーブルと「Medico」というテーブルを所有しています。テーブル "Medico" は、以下のテーブルの結合サブクラス エンティティです。

ユーザーは、既に登録されている「Entidade」を「Medico」で「Turn it」に使用できる必要があります。クラス「Entidade」を拡張するオブジェクト「Medico」を同じ ID「Entidade」で保存しようとすると、次のエラーが発生します。

私のクラス「メディコ」:

この「変身」の可能性は?

状況を理解するために他に何か必要な場合は、お尋ねください。

0 投票する
1 に答える
737 参照

java - java hibernate - InheritanceType.JOINED で列を複製

InheritanceType.JOINED を使用して、スーパークラスとサブクラスをデータベースに格納したいと考えています。しかし、それをしようとするたびに、エラーが発生します-これRepeated column in mapping for entity: com.inqool.personalpro.entity.QuestionAlgorithm column: id (should be mapped with insert="false" update="false") が私のエンティティです:

サブクラスからフィールド 'id' を削除すると、次のエラーが発生します。Could not locate table which owns column [id] referenced in order-by mapping

何か案は?ありがとう。

0 投票する
1 に答える
984 参照

hibernate - 兄弟クラスが永続化コンテキストにあるときに @MapsId で 2 番目のエンティティを永続化する EntityExistsException

私は本当に解決できない奇妙な問題を抱えています。それはこの例外です:

persist例外は、私の通過を妨げる永続コンテキストにオブジェクトがあることは明らかです。問題はEmployee、コンテキストにまったくないことです(デバッガーでチェックしてください)!

ただし、Talent更新しEmployee. それらは次のように関連しています。

人:

多くの役割があります:

そして両方TalentEmployee拡張PersonRoleします(そこに特別なものはありません)。

人がすでに才能であり、既存の人を参照して従業員を作成し、呼び出すと、例外が発生します

での @Id マッピングはPersonRoleあまり健全に見えません。上記の例外を引き起こしている問題であることを誰かが確認できますか? そして、どうすればもっとうまくやれるでしょうか?

私が表現したかったのは、各ロールには、ロールのインスタンスを一意に識別する人が関連付けられているということです。Persistence Context を見ると、Hibernate が として使用PersonRole#person.idしてEntityKeyいるように見えますが、これが例外を引き起こしているようです。

0 投票する
0 に答える
129 参照

hibernate - 休止状態で結合されたサブクラスの重複キー

好奇心に感謝します。助けが必要です:)。

そこで、結合継承を作成しました。親クラスは 'Action' と呼ばれ、サブクラスは 'AwardAction' と 'LevelUpAction' と呼ばれます。休止状態の注釈と 3 つのテーブルを使用して 3 つのクラスを作成しました。数か月は問題なく動作していましたが、最近問題が発生しました。

問題は、'Action' の 1 つのエントリに関連して、同じ ID を持つ 2 つのエントリ 'LevelUpAction' と 'AwardAction' を見つけることです!
[ アクション id=502 ]
/ \
/ \
[AwardAction id=502] [LevelUpAction id=502]

このケースは発生しないはずです。各 levelUpAction と AwardAction には独自の ID が必要です...

コードを確認しましたが、問題は見つかりませんでした。この場合、実際には AwardAction は作成されていません。LevelUpAction エントリが (予想どおり) 作成され、休止状態 (理由は不明) が AwardAction エントリも作成したと考えられます。

実際、テーブルとクラスに関するあなたの見解をお聞きしたいと思います.

クラス:



テーブル: