質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.49%
Java EE

Java EE(Java Enterprise Edition)はJavaベースのテクノロジーとその相互運用の仕様をまとめたものです。サーバとクライアントのアーキテクチャを規定し、特定アプリケーションのクラス用に定義されたテクノロジー設定のプロファイルを使用します。

Q&A

0回答

496閲覧

Criteriaで 外部キーとなっていないテーブル間をJOINして取得するための@JoinTableの設定について

HHHHH

総合スコア8

Java EE

Java EE(Java Enterprise Edition)はJavaベースのテクノロジーとその相互運用の仕様をまとめたものです。サーバとクライアントのアーキテクチャを規定し、特定アプリケーションのクラス用に定義されたテクノロジー設定のプロファイルを使用します。

0グッド

0クリップ

投稿2017/07/27 15:23

###前提・実現したいこと
Criteriaで 外部キーとなっていないテーブル間をJOINして取得したいです。
まずは、以下の例の場合@JoinTable の設定の方法が知りたいです。
JPA初心者の為、よく理解できておりません。
参考文献、URL 等でも結構です。
どうかよろしくお願い致します。

【例】以下のテーブルでJOINして取得する場合の@JoinTable の設定の方法
COL_A_3 と COL_B_1 を結合条件として SELECT するための @JoinTable の設定値
がお分かりになりましたら、ご教示いただけますでしょうか。
(「該当のソースコード」欄参照)

テーブルA
------------
COL_A_1(PK)
COL_A_2(PK)
COL_A_3
COL_A_4
COL_A_5

テーブルB
------------
COL_B_1(PK)
COL_B_2(PK)
COL_B_3
COL_B_4
COL_B_5

###発生している問題・エラーメッセージ
記憶の為正確性に欠けてしまいますが以下のようなデプロイ時にメッセージが出力されました。

joinColumns が不正ですの旨のエラーが出力される

###該当のソースコード(例)

// テーブルA 側に設定 (誤りがあります) @OneToMany // 可能であれば、NGの場合 @ManyToMany @JoinTable ( name="xxxxx_yyyyy", // 中間テーブル名 joinColumns = { @JoinColumn(name="COL_A_1", referencedColumnName="COL_A_1"), @JoinColumn(name="COL_A_2", referencedColumnName="COL_A_2") }, inverseJoinColumns = { @JoinColumn(name="COL_B_1", referencedColumnName="COL_B_1"), @JoinColumn(name="COL_B_2", referencedColumnName="COL_B_2") } ) private List<テーブルB_class> cccList;

###試したこと
注文、注文明細テーブルのパターンの場合 @JoinColumns 設定で取得できているのは確認しております。(外部キーの関連はOKでした)

###補足情報(言語/FW/ツール等のバージョンなど)
・JAVA
・JavaEE

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

まだ回答がついていません

会員登録して回答してみよう

アカウントをお持ちの方は

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.49%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問