session = sessionFactory.openSession();
Transaction tx = session.beginTransaction();
String hql ="from CustomObjectId where CONTAINS(fileName,fileName)";
Query query = session.createQuery(hql);
query.setParameter("fileName", fileName);
List file=query.list();
tx.commit();


如何搜索CONTAINS

最佳答案

您需要使用IN子句,如下所示:

 session = sessionFactory.openSession();
String hql =" from CustomObjectId c where c.fileName in :fileName";
Query query = session.createQuery(hql);
query.setParameter("fileName", fileName);
List file=query.list();


另外,您不需要(显式)事务即可仅从数据库中读取数据。因此,只需删除Transaction tx = session.beginTransaction(); and tx.commit();行。

关于java - 如何在Hibernate中使用Contains,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/40465500/

10-09 06:06
查看更多