Java Hibernate/Spring,正在执行部分匹配查询(“包含”)?
我对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);
任何建议都将不胜感激
# 1 楼答案
您还可以使用the Criteria API以编程方式设置这些类型的子句;有时,如果需要添加任何类型的动态逻辑(即根据条件包含某些子句),那么使用此API处理查询比使用基于HQL/字符串的查询要好得多
# 2 楼答案
试试看。通配符需要在变量中(出于某种原因)