title: Hibernate Best Practices: Avoiding Many-To-Many and 'exotic' relationships
body: <p>The hibernate best practices states that many-to-many associations are rare and should be avoided.</p>
  
  <blockquote>
    <p>Do not use exotic association mappings:</p>
    
    <p>Practical test cases for real many-to-many associations are rare. Most
    of the time you need additional information stored in the "link
    table". In this case, it is much better to use two one-to-many
    associations to an intermediate link class. In fact, most associations
    are one-to-many and many-to-one. For this reason, you should proceed
    cautiously when using any other association style.</p>
  </blockquote>
  
  <p>A basic and common case would be: user can be in more than one team and a team can have more than one member.</p>
  
  <p>Is there an alternative to using @ManyToMany, other than creating an entity for the join table? In the case of team/member, there is no additional data in the join table, so having Team>TeamMembership>User is not so practical.</p>