Hibernate 在可嵌入对象上应用where子句时,查询返回Null
各位好,Hibernate 在可嵌入对象上应用where子句时,查询返回Null,hibernate,hql,embeddable,Hibernate,Hql,Embeddable,各位好, @Entity public class Parent { @EmbeddedId private Child child; @Column(name = "TEST") private long test; getter setter } 和chlid类 @Embeddable public class Child { @Column(name = "TEST1", l
@Entity
public class Parent {
@EmbeddedId
private Child child;
@Column(name = "TEST")
private long test;
getter setter
}
和chlid类
@Embeddable
public class Child {
@Column(name = "TEST1", length = 50, nullable = false)
private String test1;
@Column(name = "TEST2", length = 50, nullable = false)
private String test2;
getter setter and hasCode and Equal function
}
存在具有可嵌入复合密钥的模型
String hql = "select v from Parent v WHERE v.child.test1= abc";
List<Parent> list2 = sessionFactory.getCurrentSession()
.createQuery(hql).list();
String hql=“从父v中选择v,其中v.child.test1=abc”;
List list2=sessionFactory.getCurrentSession()
.createQuery(hql).list();
这就是查询
如果我将where子句放在child.test1上,那么它将返回null,null作为记录。但是如果我删除where子句,那么它将与父级映射良好
请帮帮我。如果
abc
是一个与数据库中的某个记录匹配的正确值,那么它应该可以工作。您可以打开SQL日志来查看实际进入数据库的查询吗?