Java 如何使用复合键的部分列检索db2行

Java 如何使用复合键的部分列检索db2行,java,hibernate,jpa,db2,Java,Hibernate,Jpa,Db2,我有一个带有复合唯一键的DB2表 我有一个注释为可嵌入的复合键java类。这个键类在我的java实体java类中被称为EmbeddedId 使用完整复合键findByPrimaryKey的查询工作正常 但是,我还需要仅使用复合键的第一列来检索所有行 我想使用org.hibernate.Criteria;API来实现这一点 到目前为止,我的所有尝试要么没有检索到任何行,要么检索到整个表中的所有行 使用hibernate使用完整复合键中的部分列集检索一组行的正确方法是什么 为什么我不能创建一个带有部

我有一个带有复合唯一键的DB2表

我有一个注释为可嵌入的复合键java类。这个键类在我的java实体java类中被称为EmbeddedId

使用完整复合键findByPrimaryKey的查询工作正常

但是,我还需要仅使用复合键的第一列来检索所有行

我想使用org.hibernate.Criteria;API来实现这一点

到目前为止,我的所有尝试要么没有检索到任何行,要么检索到整个表中的所有行

使用hibernate使用完整复合键中的部分列集检索一组行的正确方法是什么


为什么我不能创建一个带有部分复合键属性集的org.hibernate.criteria.Example?在org.Hibernate.criteria.Example实例中使用@Id列时,Hibernate似乎忽略了它们。

您可能需要执行范围查询,即,>=*loval和<*hival。可能不起作用,具体取决于id的类型。您应该能够使用命名查询和JPQL来实现这一点-您必须为此使用Criteria API吗?我发现这是一个问答问题。你耍了个花招。。。其他需要此功能的人请查看[1][1]: