当前位置: 首页 > 面试题库 >

Hibernate Regexp MySQL

祁飞扬
2023-03-14
问题内容

我问这个问题以展示MySQL和Hibernate如何通过正则表达式相互配合。

问题:

SELECT * FROM table WHERE regexp column '\d'

解:

转到我的答案。

希望这可以帮助。


问题答案:

基本上,要在Hibernate中使用MySQL regexp函数,我们需要创建一个“ SQLFunctionTemplate”。

现在,如何做:

首先:创建一个名为“ AppMySQLDialect”的类,并从MySQLDialect扩展,然后覆盖空的构造函数,最后注册regexp函数:

public class AppMySQLDialect extends MySQLDialect {
    public AppMySQLDialect() {
        super();
        /**
         * Function to evaluate regexp in MySQL
         */
        registerFunction("regexp", new SQLFunctionTemplate(Hibernate.INTEGER, "?1 REGEXP ?2"));
    }
}

好的,现在让我们按以下方式使用它:

FROM Entity E WHERE regexp(E.string2evaluate, '\d') = 1

创建您的HibernateQuery并执行。



 类似资料:

相关阅读

相关文章

相关问答