Hibernate进程如何'?

How Hibernate process '?'

我是 Hibernate 新手。我无法理解 Hibernate 如何在 Restrictions.sqlRestriction() 方法中处理 ?。比如官方有一个sample guide:

List cats = sess.createCriteria(Cat.class)
    .add( Restrictions.sqlRestriction("lower({alias}.name) like lower(?)", "Fritz%", Hibernate.STRING) )
    .list();

看起来像是一个占位符。 Hibernate 会在 ...like lower(Fritz%) SQL 请求中转换此语句吗?

如果是,那么 lower(Fritz%) 看起来无效,对吗?

是的,? 是一个用“Fritz%”填充的占位符。

% 它是一个通配符,它​​经常与 like 一起使用,就像在这种情况下。
基本上查询搜索名称以“Fritz”开头的每只猫。

编辑
一开始我没明白你对 lower(Fritz%) 的担忧,但正如 XtremeBaumer 所建议的那样,查询实际上已转换为 lower('Fritz%')