public abstract class SimpleProjection extends Object implements EnhancedProjection
A single-column projection that may be aliased
Constructor and Description |
---|
SimpleProjection() |
Modifier and Type | Method and Description |
---|---|
Projection |
as(String alias)
Create an aliased form of this projection
|
String[] |
getAliases()
Get the criteria-level aliases for this projection (ie.
|
String[] |
getColumnAliases(int loc)
Get the SQL column aliases used by this projection for the columns it writes for inclusion into the
<tt>SELECT</tt> clause (
Projection.toSqlString(org.hibernate.Criteria, int, org.hibernate.criterion.CriteriaQuery) . |
String[] |
getColumnAliases(int loc,
Criteria criteria,
CriteriaQuery criteriaQuery)
Get the SQL column aliases used by this projection for the columns it writes for inclusion into the
<tt>SELECT</tt> clause (
Projection.toSqlString(org.hibernate.Criteria, int, org.hibernate.criterion.CriteriaQuery) . |
String[] |
getColumnAliases(String alias,
int loc)
Get the SQL column aliases used by this projection for the columns it writes for inclusion into the
<tt>SELECT</tt> clause (
Projection.toSqlString(org.hibernate.Criteria, int, org.hibernate.criterion.CriteriaQuery) <i>for a particular criteria-level alias</i>. |
String[] |
getColumnAliases(String alias,
int loc,
Criteria criteria,
CriteriaQuery criteriaQuery)
Get the SQL column aliases used by this projection for the columns it writes for inclusion into the
<tt>SELECT</tt> clause (
Projection.toSqlString(org.hibernate.Criteria, int, org.hibernate.criterion.CriteriaQuery) <i>for a particular criteria-level alias</i>. |
int |
getColumnCount(Criteria criteria,
CriteriaQuery criteriaQuery)
Count the number of columns this projection uses.
|
Type[] |
getTypes(String alias,
Criteria criteria,
CriteriaQuery criteriaQuery)
Get the return types for a particular user-visible alias.
|
boolean |
isGrouped()
Is this projection fragment (<tt>SELECT</tt> clause) also part of the <tt>GROUP BY</tt>
|
String |
toGroupSqlString(Criteria criteria,
CriteriaQuery criteriaQuery)
Render the SQL fragment to be used in the <tt>GROUP BY</tt> clause
|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
getTypes, toSqlString
public Projection as(String alias)
Create an aliased form of this projection
alias
- The alias to applypublic String[] getColumnAliases(String alias, int loc)
Projection
Get the SQL column aliases used by this projection for the columns it writes for inclusion into the
<tt>SELECT</tt> clause (Projection.toSqlString(org.hibernate.Criteria, int, org.hibernate.criterion.CriteriaQuery)
<i>for a particular criteria-level alias</i>.
getColumnAliases
in interface Projection
alias
- The criteria-level aliasloc
- Just as in Projection.toSqlString(org.hibernate.Criteria, int, org.hibernate.criterion.CriteriaQuery)
, represents the number of <b>columns</b> rendered
prior to this projection.public String[] getColumnAliases(String alias, int loc, Criteria criteria, CriteriaQuery criteriaQuery)
EnhancedProjection
Get the SQL column aliases used by this projection for the columns it writes for inclusion into the
<tt>SELECT</tt> clause (Projection.toSqlString(org.hibernate.Criteria, int, org.hibernate.criterion.CriteriaQuery)
<i>for a particular criteria-level alias</i>.
getColumnAliases
in interface EnhancedProjection
alias
- The criteria-level aliasloc
- Just as in Projection.toSqlString(org.hibernate.Criteria, int, org.hibernate.criterion.CriteriaQuery)
, represents the number of <b>columns</b> rendered
prior to this projection.criteria
- The local criteria to which this project is attached (for resolution).criteriaQuery
- The overall criteria query instance.public Type[] getTypes(String alias, Criteria criteria, CriteriaQuery criteriaQuery)
Projection
Get the return types for a particular user-visible alias.
<p/>
Differs from Projection.getTypes(org.hibernate.Criteria, CriteriaQuery)
in that here we are only interested in
the types related to the given criteria-level alias.
getTypes
in interface Projection
alias
- The criteria-level alias for which to find types.criteria
- The local criteria to which this project is attached (for resolution).criteriaQuery
- The overall criteria query instance.public String[] getColumnAliases(int loc)
Projection
Get the SQL column aliases used by this projection for the columns it writes for inclusion into the
<tt>SELECT</tt> clause (Projection.toSqlString(org.hibernate.Criteria, int, org.hibernate.criterion.CriteriaQuery)
. Hibernate always uses column aliases to extract data from the
JDBC ResultSet
, so it is important that these be implemented correctly in order for
Hibernate to be able to extract these val;ues correctly.
getColumnAliases
in interface Projection
loc
- Just as in Projection.toSqlString(org.hibernate.Criteria, int, org.hibernate.criterion.CriteriaQuery)
, represents the number of <b>columns</b> rendered
prior to this projection.public int getColumnCount(Criteria criteria, CriteriaQuery criteriaQuery)
Count the number of columns this projection uses.
criteria
- The criteriacriteriaQuery
- The querypublic String[] getColumnAliases(int loc, Criteria criteria, CriteriaQuery criteriaQuery)
EnhancedProjection
Get the SQL column aliases used by this projection for the columns it writes for inclusion into the
<tt>SELECT</tt> clause (Projection.toSqlString(org.hibernate.Criteria, int, org.hibernate.criterion.CriteriaQuery)
. Hibernate always uses column aliases to extract data from the
JDBC ResultSet
, so it is important that these be implemented correctly in order for
Hibernate to be able to extract these val;ues correctly.
getColumnAliases
in interface EnhancedProjection
loc
- Just as in Projection.toSqlString(org.hibernate.Criteria, int, org.hibernate.criterion.CriteriaQuery)
, represents the number of <b>columns</b> rendered
prior to this projection.criteria
- The local criteria to which this project is attached (for resolution).criteriaQuery
- The overall criteria query instance.public String[] getAliases()
Projection
Get the criteria-level aliases for this projection (ie. the ones that will be passed to the
ResultTransformer
)
getAliases
in interface Projection
public String toGroupSqlString(Criteria criteria, CriteriaQuery criteriaQuery)
Projection
Render the SQL fragment to be used in the <tt>GROUP BY</tt> clause
toGroupSqlString
in interface Projection
criteria
- The local criteria to which this project is attached (for resolution).criteriaQuery
- The overall criteria query instance.public boolean isGrouped()
Projection
Is this projection fragment (<tt>SELECT</tt> clause) also part of the <tt>GROUP BY</tt>
isGrouped
in interface Projection
Copyright © 2001-2018 Red Hat, Inc. All Rights Reserved.