Java @嵌入式列表对象休眠
我需要有关Hibernate嵌入列表对象的帮助 这是实体消息:Java @嵌入式列表对象休眠,java,hibernate,list,Java,Hibernate,List,我需要有关Hibernate嵌入列表对象的帮助 这是实体消息: @Embeddable public class Mensaje implements Serializable{ /** * */ private static final long serialVersionUID = 1L; private String mensaje; private Usuario emisor; private Usuario rec
@Embeddable
public class Mensaje implements Serializable{
/**
*
*/
private static final long serialVersionUID = 1L;
private String mensaje;
private Usuario emisor;
private Usuario receptor;
//??????????????????????
private Calendar ficha;
private boolean leido;
}
这是实体用户:
@Entity
@Table(name = "USUARIO")
public class Usuario implements Serializable {
/**
*
*/
private static final long serialVersionUID = 1L;
@Id
@GeneratedValue(strategy = GenerationType.IDENTITY)
@Column(name = "ID_USUARIO")
private int idUsuario;
@Column(name = "USERNAME", unique = true, nullable = false)
private String username;
@Column(name = "PASSWORD", nullable = false)
private String password;
@Column(name = "CORREO", nullable = false)
private String correo;
@OneToMany(mappedBy ="usuario",cascade= CascadeType.ALL)
private List<Curso> cursos;
@Column(name = "PAIS")
private String pais;
@Column(name = "CIUDAD")
private String ciudad;
//????????????????????????????
@Embedded
List <Mensaje> mensajes;
}
@实体
@表(name=“USUARIO”)
公共类Usuario实现了可序列化{
/**
*
*/
私有静态最终长serialVersionUID=1L;
@身份证
@GeneratedValue(策略=GenerationType.IDENTITY)
@列(name=“ID\u USUARIO”)
私家侦探;
@列(name=“USERNAME”,unique=true,nullable=false)
私有字符串用户名;
@列(name=“PASSWORD”,null=false)
私有字符串密码;
@列(name=“CORREO”,nullable=false)
私有字符串correo;
@OneToMany(mappedBy=“usuario”,cascade=CascadeType.ALL)
私有列表游标;
@列(name=“PAIS”)
私有字符串PAI;
@列(name=“CIUDAD”)
私人字符串ciudad;
//????????????????????????????
@嵌入
列出月经量;
}
我喜欢用Hibernate将实体Mensaje嵌入到实体Usuario中。
我试过ElementoCollection,但效果不好。
你能帮我吗?
谢谢;) 地址可嵌入对象的示例
@Embedded
@AttributeOverrides({
@AttributeOverride(name = "streetAndNumber", column = @Column(name = "ADDRESS_STREET_AND_NUMBER")),
@AttributeOverride(name = "addition", column = @Column(name = "ADDRESS_ADDITION")),
@AttributeOverride(name = "postalCode", column = @Column(name = "ADDRESS_POSTALCODE", length = 32)),
@AttributeOverride(name = "city", column = @Column(name = "ADDRESS_CITY", length = 256)),
@AttributeOverride(name = "country", column = @Column(name = "ADDRESS_COUNTRY", length = 64))})
private Address address;
请用这个测试一下
@Entity
public class Employee {
....
....
@ElementCollection
@CollectionTable(
name = "MENSAJE",
joinColumns = @JoinColumn(name="EMPLOYEE_ID")
)
private List<Mensaje> mensajes;
....
....
}
@Embeddable
public class Mensaje implements Serializable{
....
....
@Column
@Temporal(TemporalType.TIMESTAMP)
private Calendar ficha;
....
....
}
@实体
公营雇员{
....
....
@元素集合
@收集表(
name=“MENSAJE”,
joinColumns=@JoinColumn(name=“EMPLOYEE\u ID”)
)
私人名单;
....
....
}
@可嵌入
公共类Mensaje实现了可序列化{
....
....
@纵队
@时态(TemporalType.TIMESTAMP)
私人日历费查;
....
....
}