Function Hibernate HQL无法识别oracle替换功能

Function Hibernate HQL无法识别oracle替换功能,function,replace,hql,Function,Replace,Hql,我有一节课 class A { String aField; String bField; } class B { A classAField } 我使用限制来构造HQL Restrictions.like(propertyName, obj); 我使用oracle sql函数封闭propertyName以删除所有空格,因此propertyName是

我有一节课

       class  A  {
            String aField;
            String bField;
     }

       class  B {
             A   classAField
     }
我使用限制来构造HQL

  Restrictions.like(propertyName, obj);
我使用oracle sql函数封闭propertyName以删除所有空格,因此propertyName是

  replace(classAField.aField,' ')
我得到了下面的错误

  could not resolve property: replace(classAField of: B; nested exception is org.hibernate.QueryException: could not resolve property: replace(classAField of: B
Hibernate无法识别pl/sql函数。 我使用oracle 10g diaglect

<prop key="hibernate.dialect">org.hibernate.dialect.Oracle10gDialect</prop>

is there a work around here?
org.hibernate.dialent.oracle10galent
这附近有工作吗?

非常感谢

,您可能想要

让它在你的特定环境中发挥作用可能需要一些工作,但是使用它你通常可以解决像这样的困难


将其用于特定实体的特定字段并不强制您在任何地方都使用它。它可以与其他限制混合使用。

好的,除了使用sqlRestriction,Criteria查询不识别函数。

谢谢。如何使Hibernate使用替换函数而不是使用sqlRestriction您可以在sqlRestriction的参数中使用它。问题是我不能对所有实体使用sqlRestriction。我需要替换实体的特定一个属性。所以我需要知道映射的列名和表别名。