类 SQLProjection
- java.lang.Object
-
- org.hibernate.criterion.SQLProjection
-
- 所有已实现的接口:
Serializable,Projection
public class SQLProjection extends Object implements Projection
A SQL fragment. The string {alias} will be replaced by the alias of the root entity.- 另请参阅:
- 序列化表格
-
-
构造器概要
构造器 限定符 构造器 说明 protectedSQLProjection(String sql, String[] columnAliases, Type[] types)protectedSQLProjection(String sql, String groupBy, String[] columnAliases, Type[] types)
-
方法概要
所有方法 实例方法 具体方法 修饰符和类型 方法 说明 String[]getAliases()Get the criteria-level aliases for this projection (ie. the ones that will be passed to theResultTransformer)String[]getColumnAliases(int loc)Get the SQL column aliases used by this projection for the columns it writes for inclusion into the SELECT 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 SELECT clause (Projection.toSqlString(org.hibernate.Criteria, int, org.hibernate.criterion.CriteriaQuery)for a particular criteria-level alias.Type[]getTypes(String alias, Criteria crit, CriteriaQuery criteriaQuery)Get the return types for a particular user-visible alias.Type[]getTypes(Criteria crit, CriteriaQuery criteriaQuery)Types returned by the rendered SQLfragment.booleanisGrouped()Is this projection fragment (SELECT clause) also part of the GROUP BYStringtoGroupSqlString(Criteria criteria, CriteriaQuery criteriaQuery)Render the SQL fragment to be used in the GROUP BY clauseStringtoSqlString(Criteria criteria, int loc, CriteriaQuery criteriaQuery)Render the SQL fragment to be used in the SELECT clause.StringtoString()
-
-
-
方法详细资料
-
toSqlString
public String toSqlString(Criteria criteria, int loc, CriteriaQuery criteriaQuery)
从接口复制的说明:ProjectionRender the SQL fragment to be used in the SELECT clause.- 指定者:
toSqlString在接口中Projection- 参数:
criteria- The local criteria to which this project is attached (for resolution).loc- The number of columns rendered in the SELECT clause before this projection. Generally speaking this is useful to ensure uniqueness of the individual columns aliases.criteriaQuery- The overall criteria query instance.- 返回:
- The SQL fragment to plug into the SELECT
-
toGroupSqlString
public String toGroupSqlString(Criteria criteria, CriteriaQuery criteriaQuery)
从接口复制的说明:ProjectionRender the SQL fragment to be used in the GROUP BY clause- 指定者:
toGroupSqlString在接口中Projection- 参数:
criteria- The local criteria to which this project is attached (for resolution).criteriaQuery- The overall criteria query instance.- 返回:
- The SQL fragment to plug into the GROUP BY
-
getTypes
public Type[] getTypes(Criteria crit, CriteriaQuery criteriaQuery)
从接口复制的说明:ProjectionTypes returned by the rendered SQLfragment. In other words what are the types that would represent the values this projection asked to be pulled into the result set?- 指定者:
getTypes在接口中Projection- 参数:
crit- The local criteria to which this project is attached (for resolution).criteriaQuery- The overall criteria query instance.- 返回:
- The return types.
-
getAliases
public String[] getAliases()
从接口复制的说明:ProjectionGet the criteria-level aliases for this projection (ie. the ones that will be passed to theResultTransformer)- 指定者:
getAliases在接口中Projection- 返回:
- The aliases
-
getColumnAliases
public String[] getColumnAliases(int loc)
从接口复制的说明:ProjectionGet the SQL column aliases used by this projection for the columns it writes for inclusion into the SELECT clause (Projection.toSqlString(org.hibernate.Criteria, int, org.hibernate.criterion.CriteriaQuery). Hibernate always uses column aliases to extract data from the JDBCResultSet, so it is important that these be implemented correctly in order for Hibernate to be able to extract these values correctly.- 指定者:
getColumnAliases在接口中Projection- 参数:
loc- Just as inProjection.toSqlString(org.hibernate.Criteria, int, org.hibernate.criterion.CriteriaQuery), represents the number of columns rendered prior to this projection.- 返回:
- The columns aliases.
-
isGrouped
public boolean isGrouped()
从接口复制的说明:ProjectionIs this projection fragment (SELECT clause) also part of the GROUP BY- 指定者:
isGrouped在接口中Projection- 返回:
- True if the projection is also part of the GROUP BY; false otherwise.
-
getTypes
public Type[] getTypes(String alias, Criteria crit, CriteriaQuery criteriaQuery)
从接口复制的说明:ProjectionGet the return types for a particular user-visible alias. Differs fromProjection.getTypes(org.hibernate.Criteria, CriteriaQuery)in that here we are only interested in the types related to the given criteria-level alias.- 指定者:
getTypes在接口中Projection- 参数:
alias- The criteria-level alias for which to find types.crit- The local criteria to which this project is attached (for resolution).criteriaQuery- The overall criteria query instance.- 返回:
- The return types; expected to return null if this projection does not understand this alias.
-
getColumnAliases
public String[] getColumnAliases(String alias, int loc)
从接口复制的说明:ProjectionGet the SQL column aliases used by this projection for the columns it writes for inclusion into the SELECT clause (Projection.toSqlString(org.hibernate.Criteria, int, org.hibernate.criterion.CriteriaQuery)for a particular criteria-level alias.- 指定者:
getColumnAliases在接口中Projection- 参数:
alias- The criteria-level aliasloc- Just as inProjection.toSqlString(org.hibernate.Criteria, int, org.hibernate.criterion.CriteriaQuery), represents the number of columns rendered prior to this projection.- 返回:
- The columns aliases pertaining to a particular criteria-level alias; expected to return null if this projection does not understand this alias.
-
-