Example usage for org.hibernate.hql.spi QueryTranslatorFactory createQueryTranslator

List of usage examples for org.hibernate.hql.spi QueryTranslatorFactory createQueryTranslator

Introduction

In this page you can find the example usage for org.hibernate.hql.spi QueryTranslatorFactory createQueryTranslator.

Prototype

public QueryTranslator createQueryTranslator(String queryIdentifier, String queryString, Map filters,
        SessionFactoryImplementor factory, EntityGraphQueryHint entityGraphQueryHint);

Source Link

Document

Construct a QueryTranslator instance capable of translating an HQL query string.

Usage

From source file:org.n52.sos.ds.hibernate.util.HibernateHelper.java

License:Open Source License

/**
 * Get the SQL query string from HQL Query.
 *
 * @param query//w  ww  . ja v  a2s  .c  o m
 *            HQL query to convert to SQL
 * @return SQL query string from HQL
 */
public static String getSqlString(Query query, Session session) {
    final QueryTranslatorFactory ast = new ASTQueryTranslatorFactory();
    SessionFactory sessionFactory = session.getSessionFactory();
    final QueryTranslatorImpl qt = (QueryTranslatorImpl) ast.createQueryTranslator("id", query.getQueryString(),
            Maps.newHashMap(), (SessionFactoryImplementor) sessionFactory, null);
    qt.compile(null, false);
    return qt.getSQLString();
}