我有以下實體類:通過netbeans的產生如何在JPA中使用Collection屬性持久Bean?
public class Usuario implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Basic(optional = false)
@Column(name = "Id")
private Integer id;
@Size(max = 255)
@Column(name = "Senha")
private String senha;
@Size(max = 255)
@Column(name = "Nome")
private String nome;
@ManyToMany(mappedBy = "usuarioCollection", fetch = FetchType.EAGER)
private Collection<Grupo> grupoCollection;
}
和
public class Grupo implements Serializable {
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Basic(optional = false)
@Column(name = "Id")
private Integer id;
@Size(max = 255)
@Column(name = "Nome")
private String nome;
@JoinTable(name = "usuario_grupo", joinColumns = {
@JoinColumn(name = "GrupoID", referencedColumnName = "Id")}, inverseJoinColumns = {
@JoinColumn(name = "UsuarioID", referencedColumnName = "Id")})
@ManyToMany(fetch = FetchType.EAGER)
private Collection<Usuario> usuarioCollection;
}
這些代碼。
當我試着使用JPA
entityManager.persist(usuario);
它執行堅持它,但在usuario_grupo表中沒有登記。
即,在表中註冊了usuario(grupo已經存在於表grupo中),但usuario_grupo沒有。
你知道我該如何做到這一點嗎?
注:有些名稱是用葡萄牙語。
你的代碼很長。請提供可複製問題的[簡短,獨立,正確(可編譯),示例](http://sscce.org/)。 – 2012-09-01 14:25:47
我編輯帖子來隱藏無用的代碼。 –