molti a molti relazione con gli attributi utilizzando le annotazioni
voglio sapere come creare il role_permission tabella con il @ManyToMany annotazioni tenendo conto della created_at attributo nel role_permission tavolo.
so che posso fare qualcosa di simile:
public class Role implements Serializable{
@Id
@Column(name = "_id")
private String id;
@Column(name = "name")
@NotNull
private String name;
@Column(name = "description")
private String description;
@ManyToMany(cascade = {CascadeType.ALL})
@JoinTable(name="role_permission", schema=joinColumns={@JoinColumn(name="idRole")}, inverseJoinColumns={@JoinColumn(name="idPermission")})
private Set<Permission> permissions=new HashSet();
E
public class Permission implements Serializable{
@Id
@Column(name = "_id")
private String id;
@Column(name = "name")
@NotNull
private String name;
@Column(name = "description")
private String description;
@ManyToMany(cascade = {CascadeType.ALL})
@JoinTable(name="role_permission", schema=joinColumns={@JoinColumn(name="idPermission")}, inverseJoinColumns={@JoinColumn(name="idRole")})
private Set<Permission> roles=new HashSet();
Con questo posso evitare di creare una nuova classe per role_permission, ma non so come mettere created_at in questa annotazione. È possibile?
http://stackoverflow.com/questions/10294338/many-to-many-hibernate-mapping-for-additional-property-in-the-join-table/10301484#10301484 http://stackoverflow.com/questions/4751902/adding-additional-property-to-hibernate-jointable –
il primo link usa un intermediario e voglio evitare questo e il secondo non è molto chiaro e usa una hashmap, cosa succede se voglio di più attributi nella tabella role_permission ?. Ci sono altre opzioni? – kiduxa
Nessuno che io conosca. Se qualcuno sa che soluzioni alternative risponderanno/commenteranno. IMHO, a volte, la soluzione migliore è quella che riesco a capire, gestire e modificare senza problemi –