将 Hibernate 的 HQL 转成最终要执行的 SQL 语句,hibernatehql,关于 convert_g
分享于 点击 37075 次 点评:253
将 Hibernate 的 HQL 转成最终要执行的 SQL 语句,hibernatehql,关于 convert_g
关于 convert_gbk 函数请看这里。
HQL2SQL.java
/** * HQL2SQL.java of DLOG4J_E40 * 作者: Winter Lau * 时间: 2008-1-30 * 项目主页: <a href="http://www.dlog4j.com/">http://www.dlog4j.com</a> */package com.dlog4j.tester;import org.hibernate.hql.FilterTranslator;import org.hibernate.hql.QueryTranslatorFactory;import org.hibernate.impl.SessionFactoryImpl;import com.dlog4j.dbaccess.HibernateUtils;/** * HSQL to SQL * -Djava.ext.dirs=webapp/WEB-INF/lib;packages -cp webapp/WEB-INF/classes * @author Winter Lau */public class HQL2SQL { /** * @param args */ public static void main(String[] args) { SessionFactoryImpl sfi = (SessionFactoryImpl) HibernateUtils.getSessionFactory(); String hql = "FROM UserBean ORDER BY convert_gbk(name)"; QueryTranslatorFactory qtf = sfi.getSettings().getQueryTranslatorFactory(); FilterTranslator qt = qtf.createFilterTranslator(hql, hql, null, sfi); qt.compile(null, false); System.out.println(qt.getSQLString()); }}
用户点评