首页 > 代码库 > 自定义 Hibernate 的 HQL 函数

自定义 Hibernate 的 HQL 函数

 有时候我们使用一些数据库特有的SQL语法跟HQL有冲突怎么办,看看这个

标签:HQL Dialect MySQL Hibernate

[1].[代码] MySQLExtendDialect.java 跳至 [1]

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
/**
 * MySQLExtendDialect.java of new_dlog_cn
 * 作者: Winter Lau
 * 时间: 2009-4-13
 * 项目主页: <a href=http://www.mamicode.com/"http://www.dlog4j.com/">http://www.dlog4j.com
 */
packagecom.dlog4j.tester;
 
importorg.hibernate.Hibernate;
importorg.hibernate.dialect.*;
importorg.hibernate.dialect.function.SQLFunctionTemplate;
 
/**
 * MySQL扩展方言
 * @author Winter Lau
 */
publicclass MySQLExtendDialect extendsMySQLDialect {
 
    publicMySQLExtendDialect(){
        super();
        registerFunction("convert_gbk",
                 newSQLFunctionTemplate(Hibernate.STRING, "convert(?1 using gbk)") );
    }
     
}

自定义 Hibernate 的 HQL 函数