我还很 hibernate ,似乎找不到解决方法,也许我在使用错误的术语进行搜索。我正在从UI中传递用户提供的值,在下面的示例中,这是变量testvalue。这是为了进行搜索,因此用户输入的内容是否包含在条目e.filenametxt中的任何位置,我希望它返回该行作为匹配项。

例如,testvalue = "file1",我希望它能够找到e.filenametxt = "file1/someotherinfo/"所在的行

String SQL_QUERY = "from EdrmTest e where e.filenametxt is :foreignkeytest ";
Query query = session.createQuery(SQL_QUERY);
query.setParameter("foreignkeytest", testvalue);

任何建议表示赞赏。

最佳答案

String SQL_QUERY = "from EdrmTest e where e.filenametxt LIKE :foreignkeytest ";
Query query = session.createQuery(SQL_QUERY);
query.setParameter("foreignkeytest", "%" + testvalue + "%");\

试试看通配符必须位于变量中(出于某种原因)。

09-25 20:22