List of usage examples for org.hibernate.loader.criteria CriteriaQueryTranslator getSQLAlias
@Override
public String getSQLAlias(Criteria criteria)
From source file:org.iternine.jeppetto.dao.hibernate.HibernateQueryModelDAO.java
License:Apache License
private void buildSelectClause(StringBuilder queryStringBuilder, CriteriaQueryTranslator criteriaQueryTranslator, Set<String> associationPaths) { // "distinct" is needed only for association criteria, but it prevents specifying ordering by "ace.id" if (associationPaths.isEmpty()) { queryStringBuilder.append("select "); } else {//from w ww. ja v a 2s.c o m queryStringBuilder.append("select distinct "); } queryStringBuilder.append(criteriaQueryTranslator.getRootSQLALias()); queryStringBuilder.append(" from AccessControlEntry ace, "); queryStringBuilder.append(persistentClass.getSimpleName()); queryStringBuilder.append(' '); queryStringBuilder.append(criteriaQueryTranslator.getRootSQLALias()); for (String associationPath : associationPaths) { queryStringBuilder.append(" join "); queryStringBuilder.append(criteriaQueryTranslator.getRootSQLALias()); queryStringBuilder.append('.'); queryStringBuilder.append(associationPath); queryStringBuilder.append(" as "); queryStringBuilder.append( criteriaQueryTranslator.getSQLAlias(criteriaQueryTranslator.getCriteria(associationPath))); } }