Example usage for org.hibernate.internal SessionFactoryImpl getNamedSQLQuery

List of usage examples for org.hibernate.internal SessionFactoryImpl getNamedSQLQuery

Introduction

In this page you can find the example usage for org.hibernate.internal SessionFactoryImpl getNamedSQLQuery.

Prototype

@Deprecated
default NamedSQLQueryDefinition getNamedSQLQuery(String queryName) 

Source Link

Usage

From source file:com.eryansky.common.orm.core.hibernate.support.BasicHibernateDao.java

License:Apache License

/**
 * ?SQL?SQLQuery//from ww w. java2 s .  c o m
 *
 * @param queryOrNamedSQLQuery query  NamedSQLQuery
 * @param values ????,?.
 *
 * @return {@link org.hibernate.SQLQuery}
 */
protected SQLQuery createSQLQuery(String queryOrNamedSQLQuery, Object... values) {
    Assert.hasText(queryOrNamedSQLQuery, "queryOrNamedSQLQuery?");
    SessionFactoryImpl factory = (SessionFactoryImpl) sessionFactory;
    NamedSQLQueryDefinition nsqlqd = factory.getNamedSQLQuery(queryOrNamedSQLQuery);
    Query query = null;

    if (nsqlqd != null) {
        query = getSession().getNamedQuery(queryOrNamedSQLQuery);
    } else {
        query = getSession().createSQLQuery(queryOrNamedSQLQuery);
    }

    setQueryValues(query, values);
    SQLQuery sqlQuery = (SQLQuery) query;

    return sqlQuery.addEntity(entityClass);
}