EJB 3 persistence supports both bi-directional many-to-many association mapping and unidirectional many-to-many association mapping.
A ManyToMany annotation is generated to define a many-valued association with many-to-many multiplicity.
@ManyToMany(fetch=FetchType.EAGER) @JoinTable( name="Assignment", joinColumns={ @JoinColumn(name="eid", referencedColumnName="eid") }, inverseJoinColumns={ @JoinColumn(name="tid", referencedColumnName="tid") } ) public java.util.Collection<Title> getTitle() { ... }
A model check is available to verify that mappings are correctly defined for many-to-many associations. Middle tables are needed for many-to-many association mapping.
For more informations about mapping, see O/R Mapping Modeling.