【发布时间】:2012-10-26 08:59:36
【问题描述】:
我有一个使用 Hibernate HQL 查询的类。我想将这些更改为 Hibernate Criteria 查询。 然而,Hibernate Criteria 对我来说比 HQL 更难理解,即使有教程也是如此。有人可以告诉我其中一个查询使用 Hibernate Criteria/Filters 的样子吗?
Configuration configuration = new Configuration();
configuration.configure().setProperty("hibernate.show_sql", "false");
ServiceRegistry serviceRegistry = new ServiceRegistryBuilder().applySettings(
configuration.getProperties()).buildServiceRegistry();
SessionFactory sessionFactory = new Configuration().configure().buildSessionFactory(serviceRegistry);
Session session =sessionFactory.openSession();
Transaction tx = session.beginTransaction();
Query query = session.createQuery("from TABLENAME WHERE IDObject1= :idObjectA" +
"AND IDObject2= :idObjectB AND IDSettingOption = :idSettingOption");
query.setParameter("idObjectA", idObjectB);
query.setParameter("idObjectB", idObjectB);
query.setParameter("idSettingOption", idSettingOption);
List results = query.list();
提前致谢!
【问题讨论】:
-
你的表描述是什么?
-
@atteij 当您选择其中一个答案时,问题的状态为“已更改为已解决”。
-
您的答案使用的是“Hibernate Criteria”而不是“JPA Criteria”(它们是不同的)。如果您想要特定于 Hibernate 或独立于 JPA 提供程序的答案,建议您澄清您的问题......如果您想要 Hibernate Criteria,请从问题中删除“jpa”标签
-
我明白了。我的印象是它的意思是一样的。我正在寻找仍然与 JPA 兼容的 Hibernate 标准。我将编辑我的问题
-
感谢 Paul :) 一切都清楚后我会这样做
标签: java hibernate hibernate-criteria