无法使用session.createCriteria使用HIbernate从表中打印日期列表?

时间:2017-04-10 15:03:26

标签: java hibernate orm hql

以下代码上个月在2017年3月15日为我工作 现在,在创建新项目并下载The method createCriteria(Class) from the type SharedSessionContract is deprecated之后,有一条消息说Hibernate,我按照之前的所有步骤进行操作 我想要的只是从Product获取所有数据,但是以Java List<Product>格式,在SQL中将select * from products;

Session session =
HibernateUtil.getSessionFactory().getCurrentSession();
session.beginTransaction();
Criteria product = session.createCriteria(Product.class);
List<Product> list = product.list();
for(Product productlist:list){
System.out.println(productlist.getProductId()+
""+productlist.getProductCode()+productlist.getProductName());
}

1 个答案:

答案 0 :(得分:0)

您应该使用以下内容:

getCurrentSession().getCriteriaBuilder().createQuery(Product.class);

Session实现了EntityManager,可以访问getCriteriaBuilder和JPA条件API。

鉴于查询的简单性。你真的需要使用CriteriaQuery吗?

List<Product> list = session.createQuery("", Product.class).getResultList();

会为您提供产品的类型安全列表。