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日志来查看实际进入数据库的查询吗?