如何在hibernate中使用SQL in()?

如何在hibernate中使用SQL in()?,sql,hibernate,Sql,Hibernate,我的SQL查询是 select * from PTAX_ECHALLAN_DATA where IDENTIFICATION_NO in('ECC0013056','192009028150','20150086699'); 它是如何使用hibernate编写的? 如果可以使用hql或criteria?您可以使用hibernate criteria interface for mysql in()函数。在hibernate中,criteria API帮助我们动态构建criteria查询对象。标

我的SQL查询是

select * from PTAX_ECHALLAN_DATA where IDENTIFICATION_NO in('ECC0013056','192009028150','20150086699');
它是如何使用hibernate编写的?
如果可以使用hql或criteria?

您可以使用hibernate criteria interface for mysql in()函数。在hibernate中,criteria API帮助我们动态构建criteria查询对象。标准是除HQL和本机SQL查询之外的另一种数据检索技术。Criteria API的主要优点是,它直观地设计为在不使用任何硬编码SQL语句的情况下操作数据。编程行为提供编译时语法检查;因此,大多数错误消息都是在编译期间传递的

你可以试试这个,我已经测试过了,它可以正常工作

 Criteria crit = this.sf.getCurrentSession().createCriteria(PTAX_ECHALLAN_DATA .class);
                        Criterion list = Restrictions.in("IDENTIFICATION_NO ", Arrays.asList(ECC0013056,192009028150,20150086699));

                        crit.add(list);
                        List<PTAX_ECHALLAN_DATA > results =  crit.list();
                        System.out.println(" o/p details are :: " + results );
Criteria crit=this.sf.getCurrentSession().createCriteria(PTAX\u ECHALLAN\u DATA.class);
标准列表=限制。in(“标识号”,数组。asList(ECC01305619200902815020150086699));
标准添加(列表);
列表结果=crit.List();
System.out.println(“o/p详细信息为::”+结果);

看看这个谢谢@manfromnowhere