問題タブ [mappedby]
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 - 双方向JPAOneToMany/ ManyToOneアソシエーションの「アソシエーションの逆側」とは何ですか?
@OneToMany
JPAアノテーションリファレンスのサンプルセクション:
例1-59@OneToMany-ジェネリックスを使用した顧客クラス
例1-60@ManyToOne-ジェネリックスを使用したクラスの注文
Customer
実体は協会の所有者であるように私には思えます。ただし、mappedBy
同じドキュメントの属性の説明では、次のように記述されています。
関係が双方向の場合は、例1-60に示すように、関連付けの逆(非所有)側にあるmappedBy要素を、関係を所有するフィールドまたはプロパティの名前に設定します。
しかし、私が間違っていなければ、例のように、mappedBy
実際には、非所有側ではなく、関連付けの所有側で指定されています。
だから私の質問は基本的に:
双方向(1対多/多対1)の関連付けでは、どのエンティティが所有者ですか?片側を所有者として指定するにはどうすればよいですか?多くの側を所有者として指定するにはどうすればよいですか?
「関連付けの逆側」とはどういう意味ですか?片側を逆としてどのように指定できますか?多辺を逆としてどのように指定できますか?
java - 関係を所有するフィールドとしてのmappedBy
mappedBy
フィールドに配置された場合の属性の意味を理解したと思います@OneToMany
(つまり、フィールドのタイプを表すテーブルには、宣言されたこのテーブルへの外部キーがありますが、@OneToMany(mappedBy="...")
その構文を正確に理解していません(または最後にその意味- >矛盾)。
ドキュメントによると:
マッピングされた作成者
public abstract String mappedBy
リレーションシップを所有するフィールド。
リレーションシップが一方向でない限り、必須です。
デフォルト: ""
ドキュメントが話しているフィールドはどれですか? どのテーブルで、どの値をmappedby
一致させる必要がありますか?
java - 単純な OneToMany カスケード (すべて) が機能しない ;mappedBy 、org.apache.openjpa.persistence.ArgumentException
ForfaitGenerique と Offre の 2 つのクラスがあります。ForfaitGenerique クラスでは、「mappedBy」は「forfaitgenerique」を認識しません。このエラーが発生しています:
ただし、以下に示すように、私のクラスは persistence.xml で定義されています。どこに問題があるのか 理解できません。
これが私のpersistence.xmlで、ForfaitGenequeとOffreの2つのクラスがあります。
jpa - 複数の値JPAでmappedByを使用する方法
通貨とレートの2つのテーブルがあります
通貨の主キーは、Rate の inputCurrency および outputCurrency の外部キーによって参照されます。
これらを cascadeALL にマップするにはどうすればよいですか?
Rate(Foreighキーを含むテーブル)で試しました
しかし、通貨からアイテムを削除すると、主キー違反が発生します。Rate の inputCurrency または outputCurrency によって参照されているため、通貨を削除できません。
レートのリストに通貨で注釈を付けたい場合、どのように mappingBy = "inputCurrency" and "outputCurrency" と言えますか?
symfony - Doctrine コマンド: エラーが発生したファイルと行を表示する方法
私は Symfony を初めて使用し、アプリケーションを開発しています。PHP エンティティを生成する YAML ファイルを作成しました。このコマンドを実行すると:
私はこの例外を受け取ります:
[Symfony\Component\Debug\Exception\ContextErrorException] 注意: 未定義のインデックス: mappedBy
これ以上の説明はありません。エラーを指すファイルと行はありません。
Symfony にさらに情報を提供させる方法はありますか?
jpa - 双方向 @ManyToMany の MappedBy : 理由は何ですか
- 双方向の多対多の関係で MappedBy を設定する理由は何ですか?
- あるテーブルにかなりの量のレコードがあり、他のテーブルには少数のレコードがある場合、どちら側にmappedByを配置するのが良いでしょうか?
hibernate - 多対一と一対多
私はHibernateを使用しており、エンティティがあります:
国には多くの都市を含めることができますが、都市には国が 1 つしかありません。これらのエンティティを関連付ける最良の方法は何ですか?
1)クラスにCity city
フィールドを追加し、その上に注釈を追加しますか? その結果、との 2 つのテーブルが作成されます。テーブルには country_id 列があります。City
@ManyToOne
@JoinColumn
country
city
city
2)クラスにCountry country
フィールドを追加し、その上にフィールドを追加し、クラスにフィールドを追加して、その上に注釈を追加しますか? この場合、 、および結合テーブルの 3 つのテーブルがあります。Country
@OneToMany(mappedBy='country')
City city
City
@ManyToOne
country
city
country_city