JPA ManyToMany annotation

The @ManyToMany annotation is used to implement Many-to-Many relationship. Two entities are said to be in Many-to-Many relationship if many occurrence of entity belongs to many occurrence of other entity and vice versa.

Example:

    // In Customer class:
    @ManyToMany
    @JoinTable(name="CUST_PHONES")
    public Set<PhoneNumber> getPhones() { return phones; }
 
    // In PhoneNumber class:
    @ManyToMany(mappedBy="phones")
    public Set<Customer> getCustomers() { return customers; }