如何在JPQL中分隔命名参数?

时间:2013-11-22 18:02:06

标签: jpa

我想写一个像这样的JPQL查询:

SELECT f
  FROM Foo f
 WHERE f.bar LIKE '[:bar]%'

EclipseLink无法正确解析这一点,但无法确定尾随]%实际上不是命名参数名称的一部分。

我知道ESCAPE关键字,但我不确定这会解决我的问题。我的规范选项有哪些?

1 个答案:

答案 0 :(得分:1)

我会说:用你的查询创建你的查询对象:

SELECT f FROM Foo f WHERE f.bar LIKE :bar

然后通过调用

设置“bar”参数
query.setParameter("bar", "["+bar+"]%");