title: JpaRepository won't insert many-to-many data
body: <p>I have User entity and Role entity which are generated using JPA Tools. User and Role have many-to-many relationship. I use following code to insert admin, however, no data is inserted into user_role table. Also I notice role class has @JoinTable but user class does not have it. Are there differences?</p>
  
  <pre><code>private void addAdmin() {
      User admin = new User();
      admin.setDisplayName("admin");
  
      Role role1 = new Role();
      role1.setRole("ROLE_SUPER_ADMIN");
      Role role2 = new Role();
      role2.setRole("ROLE_END_USER");
      List&lt;Role&gt; roles = new ArrayList&lt;Role&gt;();
      roles.add(role1);
      roles.add(role2);
      admin.setRoles(roles);
      userRepository.save(admin);
  }
  </code></pre>
  
  <p>Following is my User class:</p>
  
  <pre><code>@Entity
  @NamedQuery(name="User.findAll", query="SELECT u FROM User u")
  public class User implements Serializable {
    private static final long serialVersionUID = 1L;
  
    @Id
    @GeneratedValue(strategy=GenerationType.AUTO)
    private int id;
  
    @Column(name="display_name")
    private String displayName;
  
    //bi-directional many-to-many association to Role
    @ManyToMany(mappedBy="users")
    private List&lt;Role&gt; roles;
  }
  </code></pre>
  
  <p>Following is my role class:</p>
  
  <pre><code>@Entity
  @NamedQuery(name="Role.findAll", query="SELECT r FROM Role r")
  public class Role implements Serializable {
    private static final long serialVersionUID = 1L;
  
    @Id
    @GeneratedValue(strategy=GenerationType.AUTO)
    private int id;
  
    private String role;
  
    //bi-directional many-to-many association to User
    @ManyToMany
    @JoinTable(
      name="user_role"
      , joinColumns={
          @JoinColumn(name="role_id")
          }
      , inverseJoinColumns={
          @JoinColumn(name="user_id")
          }
      )
    private List&lt;User&gt; users;
  }
  </code></pre>