問題タブ [composite-id]
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.
java - 複合主キー エラー
テーブルを作りたいのですが、テーブルの名前が Car だとしましょう。brandId
、 、 の3 つの列がtypeId
ありsizeId
ます。すべての列を主キーにしたい。typeId
およびsizeId
別のテーブルの列です。すでにコードを作成しようとしていますが、@Id
各列に注釈を使用すると、「スーパータイプが見つかりません」というエラーが表示されます。
コードは以下です。
それで、私はグーグルで、@EmbeddedId
複合主キーの作成に使用できることを知りました。エンティティのコードは次のようになります。
埋め込み可能なクラス:
そして、に基づいて列を見つけるインターフェイスを作成したいと思いますbrandId
。インターフェースコード:
残念ながら、コードはエラーです:
「パスに対して属性 [brandId] を解決できません」。
brandId
だから私はエンティティクラスでセッターゲッターを作成します:
エラーは出ませんが、表の車のデータも出ません。
私の質問は:
インターフェイス コードは true ですか?
brandId
brandId の列がクラスにある場合、 で検索できるのでしょうかEmbeddable
。brandId
Entityクラスのsetter getterはtrueですか?
ありがとうございました!
hibernate - 複合 ID の hibernate 基準
以下は、問題に直面している私のコードと非常によく似た同じコードです
以下のような基準を作成する場合:-
私は例外を下回っています
org.postgresql.util.PSQLException: エラー: 演算子が存在しません: 整数 = バイト
BクラスとCクラスのオブジェクトを持つ別のクラスBCを作成し、これをクラスAで複合キーとして使用しました。そして、
それでも同じエラー
どんな助けでも大歓迎です。
注:- すべてのクラスに対して hibernate xml マッピングを行っています。
私が見つけた解決策は、以下のようにクラスAを変更しました:-