Tag: query by example

Hibernate:按示例查询涉及一对多关系

我最近开始使用Criteria API的示例组件进行查询,并遇到了一个奇怪的问题 – 尝试执行搜索时会抛出org.hibernate.QueryException。 我的方案如下: 我有一个类A,它的一个属性有一组B类实例(Set listOfBs)。 这被映射为A中的一对多关系。 我希望在B的示例实例上设置标准查询,例如,使用属性值“somevalue”指定所有B,然后应用该条件以查找在其集合中具有此类B的所有A。 这是我正在使用(或希望)的代码: Criteria aCrit = session.createCriteria(A.class); A aExampleInstance = new A(); Example aExampleCriteria = Example.create(aExampleInstance ); Criteria bCrit = atCrit.createCriteria(“listOfBs”); B bExampleInstance = new B(); bExampleInstance .setProperty(“somevalue”); bCrit.add(Example.create(bExampleInstance )); List results = aCrit.add(aExampleCriteria).list(); 我正在使用XML映射,A正在将它与B的关系映射如下(A.hbm.xml): 我意识到这可能不是正确的方法 – 欢迎任何更好的建议。 在任何情况下,麻烦的是我得到一个例外: org.hibernate.QueryException:无法解析属性:_com of:B 我已经搜索并意识到exception告诉我的是什么。 但是在我的任何类中都没有声明这样的属性名称 – 在我看来,这可能是Hibernate在引擎盖下使用的任何仪器的一部分,以使持久性看起来透明。 我很好奇这是否是一个已知问题,是否有人使用过的解决方法,或者是否有较新版本的解决方案? 我正在使用Hibernate 3.6.6。 […]

数据JPA。 按示例查询。 无法使用Long值进行搜索

我有一个实体产品 @Entity @Table(name = “Products”) public class ProductEntity implements Serializable{ @Id @GenericGenerator(name = “generator”, strategy = “increment”) @GeneratedValue(strategy=GenerationType.AUTO) private Long id; @Column(name = “model”, nullable = false) private String model; //setters and getters } 在这里我是如何尝试通过示例查询: ProductEntity product = new ProductEntity(); product.setId(productId); Example ex = Example.of(product); Page pages = productRepository.findAll(ex, page); 但我得到PostgreSQL错误:PSQLException:错误:语法错误在“L”或接近“L”。 这是创建的查询: Hibernate: select productent0_.id […]