@Target(value={ANNOTATION_TYPE,METHOD,FIELD}) @Retention(value=RUNTIME) public @interface JoinTable
A join table is typically used in the mapping of many-to-many and unidirectional one-to-many associations. It may also be used to map bidirectional many-to-one/one-to-many associations, unidirectional many-to-one relationships, and one-to-one associations (both bidirectional and unidirectional).
When a join table is used in mapping a relationship with an embeddable class on the owning side of the relationship, the containing entity rather than the embeddable class is considered the owner of the relationship.
If the JoinTable
annotation is missing, the default values of the annotation elements apply.
The name of the join table is assumed to be the table names of the associated primary tables concatenated
together (owning side first) using an underscore.
Example: @JoinTable( name="CUST_PHONE", joinColumns= @JoinColumn(name="CUST_ID", referencedColumnName="ID"), inverseJoinColumns= @JoinColumn(name="PHONE_ID", referencedColumnName="ID") )
JoinColumn
,
JoinColumns
Modifier and Type | Optional Element and Description |
---|---|
String |
catalog
(Optional) The catalog of the table.
|
ForeignKey |
foreignKey
(Optional) Used to specify or control the generation of a foreign key constraint for the columns
corresponding to the joinColumns element when table generation is in effect.
|
Index[] |
indexes
(Optional) Indexes for the table.
|
ForeignKey |
inverseForeignKey
(Optional) Used to specify or control the generation of a foreign key constraint for the columns
corresponding to the inverseJoinColumns element when table generation is in effect.
|
JoinColumn[] |
inverseJoinColumns
(Optional) The foreign key columns of the join table which reference the primary table of the entity
that does not own the association.
|
JoinColumn[] |
joinColumns
(Optional) The foreign key columns of the join table which reference the primary table of the entity
owning the association.
|
String |
name
(Optional) The name of the join table.
|
String |
schema
(Optional) The schema of the table.
|
UniqueConstraint[] |
uniqueConstraints
(Optional) Unique constraints that are to be placed on the table.
|
public abstract String name
public abstract String catalog
public abstract String schema
public abstract JoinColumn[] joinColumns
JoinColumn
.public abstract JoinColumn[] inverseJoinColumns
JoinColumn
.public abstract UniqueConstraint[] uniqueConstraints
public abstract Index[] indexes
public abstract ForeignKey foreignKey
public abstract ForeignKey inverseForeignKey
Copyright © 2020. All rights reserved.