の一部を持っていますdata_id
FK:area_id FK:customer_id(お客様より)JPA - 3つのテーブルを結合します。 1つはPKです。これは、複合PK <code>customer_id</code>と<code>company_id</code><br></p> <p><strong>データ</strong><br> ...のIDを持っている</p> <p><strong>カスタマー</strong><br> ::他の二つのそれぞれが、私は3つのエンティティを持ってPK
エリア
ID:私はJPAで@Join注釈を作成するにはどうすればよい(上記顧客からの)のcompany_id
:
FKをAREA_ID?私は@JoinTableを使用しなければならないと仮定しますが、どうやってそれを行うのか分かりません。
カスタマー
@Entity
@Table(name="customer")
@NamedQuery(name="Customer.findAll", query="SELECT c FROM Customer c")
public class Customer implements Serializable {
private static final long serialVersionUID = 1L;
@EmbeddedId
private CustomerPK id;
//bi-directional many-to-one association to CustomColumnDataCustomer
@OneToMany(mappedBy="customer")
private List<CustomColumnDataCustomer> customColumnDataCustomers;
CustomerPK
@Embeddable
public class CustomerPK implements Serializable {
//default serial version id, required for serializable classes.
private static final long serialVersionUID = 1L;
@Column(name="customer_id")
private long customerId;
@Column(name="company_id")
private String companyId;
CustomColumnDataCustomer
@Entity
@Table(name="custom_column_data_customer")
@NamedQuery(name="CustomColumnDataCustomer.findAll", query="SELECT c FROM CustomColumnDataCustomer c")
public class CustomColumnDataCustomer implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@Column(name="custom_column_data_cust_uid")
private int customColumnDataCustUid;
//bi-directional many-to-one association to Customer
@ManyToOne
private Customer customer;
//bi-directional many-to-one association to AreaXCustomColumn
@ManyToOne
@JoinColumn(name="area_x_custom_column_uid")
private AreaXCustomColumn areaXCustomColumn;
は
@Entity
@Table(name="area_x_custom_column")
@NamedQuery(name="AreaXCustomColumn.findAll", query="SELECT a FROM AreaXCustomColumn a")
public class AreaXCustomColumn implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@Column(name="area_x_custom_column_uid")
private int areaXCustomColumnUid;
@Column(name="company_id")
private String companyId;
//bi-directional many-to-one association to CustomColumnDataCustomer
@OneToMany(mappedBy="areaXCustomColumn")
private List<CustomColumnDataCustomer> customColumnDataCustomers;
//bi-directional many-to-one association to CustomColumnDefinition
@ManyToOne
@JoinColumn(name="custom_column_definition_uid")
private CustomColumnDefinition customColumnDefinition;
で編集されました。編集:編集が明確になりました。 正確に何を達成したいですか?あなたはそれらに参加するクエリを望んでいるのですか、または@JoinTableを作成したいのですか、JPAでこの関係を動作させる方法を探したいだけですか? 質問が不明です –
エンティティを書きましたか? –
@Joinアノテーションを使用してJPAで動作する関係を探しています。はい、私は実体を作りました。 – ThirstyForJava