部分复合密钥的Hibernate映射
我有如下的表格结构,一对多和多对一 映射到组合键之一部分复合密钥的Hibernate映射,hibernate,partial,composite,Hibernate,Partial,Composite,我有如下的表格结构,一对多和多对一 映射到组合键之一 @Entity @Table(name = "parent", catalog = "testdb") public class Parent implements java.io.Serializable { private Long fileId; private Set<Children> children = new HashSet<Children>(); @Id @GeneratedValue(str
@Entity
@Table(name = "parent", catalog = "testdb")
public class Parent implements java.io.Serializable {
private Long fileId;
private Set<Children> children = new HashSet<Children>();
@Id
@GeneratedValue(strategy = IDENTITY)
@Column(name = "file_id", unique = true, nullable = false)
public Long getFileId() {
return this.fileId;
}
public void setFileId(Long fileId) {
this.fileId = fileId;
}
@OneToMany(mappedBy = "id.childrenIc")
public Set<Children> getChildren() {
return children;
}
public void setChildren(Set<Children> children) {
this.children= children;
}
}
@Entity
@Table(name = "children", catalog = "testdb")
public class Children implements java.io.Serializable {
private ChildrenId id;
@EmbeddedId
@AttributeOverrides({
@AttributeOverride(name = "childId", column = @Column(name = "child_id", nullable = false)),
@AttributeOverride(name = "childrenIc", column = @Column(name = "child_ic", nullable = false)) })
public ChildrenId getId () {
return this.id;
}
public void setId(ChildrenId id) {
this.id = id;
}
}
@Embeddable
public class ChildrenId implements java.io.Serializable {
private long childId;
private Children childIc;
@ManyToOne
public Children getChildIc() {
return childIc;
}
public void setChildIc(Children childIc) {
this.childIc= childIc;
}
@Column(name = "child_id", nullable = false)
public long getChildId() {
return this.childId;
}
public void setChildId(long childId) {
this.childId= childId;
}
}
Criteria criteria = session.createCriteria(Parents.class);
Criteria childCri = criteria.createCriteria("childrenIc");
childCri .add(Restrictions.eq("childId", childId));
它也失败了
请帮忙,谢谢 请帮助我,我应该如何使用条件进行查询。非常感谢。请帮助我,我应该如何使用条件查询。非常感谢你。
Criteria childCri = criteria.createCriteria("id.childrenIc");