public class HibernateCriteriaBuilder
extends groovy.lang.GroovyObjectSupport
implements org.grails.datastore.mapping.query.api.Criteria, org.grails.datastore.mapping.query.api.ProjectionList
Wraps the Hibernate Criteria API in a builder. The builder can be retrieved through the "createCriteria()" dynamic static method of Grails domain classes (Example in Groovy):
def c = Account.createCriteria()
def results = c {
projections {
groupProperty("branch")
}
like("holderFirstName", "Fred%")
and {
between("balance", 500, 1000)
eq("branch", "London")
}
maxResults(10)
order("holderLastName", "desc")
}
The builder can also be instantiated standalone with a SessionFactory and persistent Class instance:
new HibernateCriteriaBuilder(clazz, sessionFactory).list {
eq("firstName", "Fred")
}
| Modifier and Type | Field and Description |
|---|---|
static java.lang.String |
AND |
static java.lang.String |
BETWEEN |
static org.hibernate.type.Type |
BIG_DECIMAL |
static org.hibernate.type.Type |
BIG_INTEGER |
static org.hibernate.type.Type |
BINARY |
static org.hibernate.type.Type |
BLOB |
static org.hibernate.type.Type |
BOOLEAN |
static org.hibernate.type.Type |
BYTE |
static org.hibernate.type.Type |
CALENDAR |
static org.hibernate.type.Type |
CALENDAR_DATE |
static org.hibernate.type.Type |
CHAR_ARRAY |
static org.hibernate.type.Type |
CHARACTER |
static org.hibernate.type.Type |
CHARACTER_ARRAY |
static org.hibernate.type.Type |
CHARACTERS_CLOB |
static org.hibernate.type.Type |
CLASS |
static org.hibernate.type.Type |
CLOB |
static org.hibernate.type.Type |
CURRENCY |
static org.hibernate.type.Type |
DATE |
static org.hibernate.type.Type |
DOUBLE |
static java.lang.String |
EQUALS |
static java.lang.String |
EQUALS_PROPERTY |
static org.hibernate.type.Type |
FLOAT |
static java.lang.String |
GREATER_THAN |
static java.lang.String |
GREATER_THAN_OR_EQUAL |
static java.lang.String |
GREATER_THAN_OR_EQUAL_PROPERTY |
static java.lang.String |
GREATER_THAN_PROPERTY |
static java.lang.String |
ID_EQUALS |
static java.lang.String |
ILIKE |
static org.hibernate.type.Type |
IMAGE |
static java.lang.String |
IN |
static org.hibernate.type.Type |
INTEGER |
static java.lang.String |
IS_EMPTY |
static java.lang.String |
IS_NOT_EMPTY |
static java.lang.String |
IS_NOT_NULL |
static java.lang.String |
IS_NULL |
static java.lang.String |
LESS_THAN |
static java.lang.String |
LESS_THAN_OR_EQUAL |
static java.lang.String |
LESS_THAN_OR_EQUAL_PROPERTY |
static java.lang.String |
LESS_THAN_PROPERTY |
static java.lang.String |
LIKE |
static org.hibernate.type.Type |
LOCALE |
static org.hibernate.type.Type |
LONG |
static org.hibernate.type.Type |
MATERIALIZED_BLOB |
static org.hibernate.type.Type |
MATERIALIZED_CLOB |
static java.lang.String |
NOT |
static java.lang.String |
NOT_EQUAL |
static java.lang.String |
NOT_EQUAL_PROPERTY |
static org.hibernate.type.Type |
NUMERIC_BOOLEAN |
static java.lang.String |
OR |
static java.lang.String |
ORDER_ASCENDING |
static java.lang.String |
ORDER_DESCENDING |
static java.lang.String |
RLIKE |
static org.hibernate.type.Type |
SERIALIZABLE |
static org.hibernate.type.Type |
SHORT |
static java.lang.String |
SIZE_EQUALS |
static org.hibernate.type.Type |
STRING |
static org.hibernate.type.Type |
TEXT |
static org.hibernate.type.Type |
TIME |
static org.hibernate.type.Type |
TIMESTAMP |
static org.hibernate.type.Type |
TIMEZONE |
static org.hibernate.type.Type |
TRUE_FALSE |
static org.hibernate.type.Type |
URL |
static org.hibernate.type.Type |
UUID_BINARY |
static org.hibernate.type.Type |
UUID_CHAR |
static org.hibernate.type.Type |
WRAPPER_BINARY |
static org.hibernate.type.Type |
WRAPPER_CHARACTERS_CLOB |
static org.hibernate.type.Type |
WRAPPER_MATERIALIZED_BLOB |
static org.hibernate.type.Type |
YES_NO |
| Constructor and Description |
|---|
HibernateCriteriaBuilder(java.lang.Class targetClass,
org.hibernate.SessionFactory sessionFactory) |
HibernateCriteriaBuilder(java.lang.Class targetClass,
org.hibernate.SessionFactory sessionFactory,
boolean uniqueResult) |
| Modifier and Type | Method and Description |
|---|---|
protected void |
addProjectionToList(org.hibernate.criterion.Projection propertyProjection,
java.lang.String alias)
Adds a projection to the projectList for the given alias
|
org.grails.datastore.mapping.query.api.ProjectionList |
avg(java.lang.String propertyName)
Adds a projection that allows the criteria to return the property average value
|
org.grails.datastore.mapping.query.api.ProjectionList |
avg(java.lang.String propertyName,
java.lang.String alias)
Adds a projection that allows the criteria to return the property average value
|
org.grails.datastore.mapping.query.api.Criteria |
between(java.lang.String propertyName,
java.lang.Object lo,
java.lang.Object hi)
Creates a "between" Criterion based on the property name and specified lo and hi values
|
org.hibernate.Criteria |
buildCriteria(groovy.lang.Closure<?> criteriaClosure) |
void |
cache(boolean shouldCache)
Whether to use the query cache
|
org.grails.datastore.mapping.query.api.ProjectionList |
count() |
void |
count(java.lang.String propertyName)
Adds a projection that allows the criteria to return the property count
|
void |
count(java.lang.String propertyName,
java.lang.String alias)
Adds a projection that allows the criteria to return the property count
|
org.grails.datastore.mapping.query.api.ProjectionList |
countDistinct(java.lang.String propertyName)
Adds a projection that allows the criteria to return the distinct property count
|
org.grails.datastore.mapping.query.api.ProjectionList |
countDistinct(java.lang.String propertyName,
java.lang.String alias)
Adds a projection that allows the criteria to return the distinct property count
|
org.hibernate.Criteria |
createAlias(java.lang.String associationPath,
java.lang.String alias)
Join an association, assigning an alias to the joined association.
|
org.hibernate.Criteria |
createAlias(java.lang.String associationPath,
java.lang.String alias,
int joinType)
Join an association using the specified join-type, assigning an alias
to the joined association.
|
org.grails.datastore.mapping.query.api.ProjectionList |
distinct() |
org.grails.datastore.mapping.query.api.ProjectionList |
distinct(java.util.Collection propertyNames)
A distinct projection that takes a list
|
org.grails.datastore.mapping.query.api.ProjectionList |
distinct(java.util.Collection propertyNames,
java.lang.String alias)
A distinct projection that takes a list
|
org.grails.datastore.mapping.query.api.ProjectionList |
distinct(java.lang.String propertyName)
A projection that selects a distince property name
|
org.grails.datastore.mapping.query.api.ProjectionList |
distinct(java.lang.String propertyName,
java.lang.String alias)
A projection that selects a distince property name
|
org.grails.datastore.mapping.query.api.Criteria |
eq(java.util.Map params,
java.lang.String propertyName,
java.lang.Object propertyValue)
Groovy moves the map to the first parameter if using the idiomatic form, e.g.
|
org.grails.datastore.mapping.query.api.Criteria |
eq(java.lang.String propertyName,
java.lang.Object propertyValue)
Creates an "equals" Criterion based on the specified property name and value.
|
org.grails.datastore.mapping.query.api.Criteria |
eq(java.lang.String propertyName,
java.lang.Object propertyValue,
java.util.Map params)
Creates an "equals" Criterion based on the specified property name and value.
|
org.grails.datastore.mapping.query.api.Criteria |
eqAll(java.lang.String propertyName,
groovy.lang.Closure<?> propertyValue)
Creates a subquery criterion that ensures the given property is equal to all the given returned values
|
org.grails.datastore.mapping.query.api.Criteria |
eqAll(java.lang.String propertyName,
org.grails.datastore.mapping.query.api.QueryableCriteria propertyValue)
Creates a subquery criterion that ensures the given property is equal to all the given returned values
|
org.grails.datastore.mapping.query.api.Criteria |
eqProperty(java.lang.String propertyName,
java.lang.String otherPropertyName)
Creates a Criterion that compares to class properties for equality
|
void |
fetchMode(java.lang.String associationPath,
org.hibernate.FetchMode fetchMode)
Sets the fetch mode of an associated path
|
org.grails.datastore.mapping.query.api.Criteria |
ge(java.lang.String propertyName,
java.lang.Object propertyValue)
Creates a "greater than or equal to" Criterion based on the specified property name and value
|
org.grails.datastore.mapping.query.api.Criteria |
geAll(java.lang.String propertyName,
groovy.lang.Closure<?> propertyValue)
Creates a subquery criterion that ensures the given property is greater than all the given returned values
|
org.grails.datastore.mapping.query.api.Criteria |
geAll(java.lang.String propertyName,
org.grails.datastore.mapping.query.api.QueryableCriteria propertyValue)
Creates a subquery criterion that ensures the given property is greater than all the given returned values
|
org.grails.datastore.mapping.query.api.Criteria |
geProperty(java.lang.String propertyName,
java.lang.String otherPropertyName)
Creates a Criterion that tests if the first property is greater than or equal to the second property
|
static org.hibernate.criterion.DetachedCriteria |
getHibernateDetachedCriteria(org.grails.datastore.mapping.query.api.QueryableCriteria<?> queryableCriteria) |
org.hibernate.Criteria |
getInstance()
Returns the criteria instance
|
java.lang.Class<?> |
getTargetClass() |
void |
groupProperty(java.lang.String propertyName)
Adds a projection that allows the criteria's result to be grouped by a property
|
void |
groupProperty(java.lang.String propertyName,
java.lang.String alias)
Adds a projection that allows the criteria's result to be grouped by a property
|
org.grails.datastore.mapping.query.api.Criteria |
gt(java.lang.String propertyName,
java.lang.Object propertyValue)
Creates a "greater than" Criterion based on the specified property name and value
|
org.grails.datastore.mapping.query.api.Criteria |
gtAll(java.lang.String propertyName,
groovy.lang.Closure<?> propertyValue)
Creates a subquery criterion that ensures the given property is greater than all the given returned values
|
org.grails.datastore.mapping.query.api.Criteria |
gtAll(java.lang.String propertyName,
org.grails.datastore.mapping.query.api.QueryableCriteria propertyValue)
Creates a subquery criterion that ensures the given property is greater than all the given returned values
|
org.grails.datastore.mapping.query.api.Criteria |
gte(java.lang.String s,
java.lang.Object o) |
org.grails.datastore.mapping.query.api.Criteria |
gtProperty(java.lang.String propertyName,
java.lang.String otherPropertyName)
Creates a Criterion that tests if the first property is greater than the second property
|
org.grails.datastore.mapping.query.api.ProjectionList |
id() |
org.grails.datastore.mapping.query.api.Criteria |
idEq(java.lang.Object o) |
org.grails.datastore.mapping.query.api.Criteria |
idEquals(java.lang.Object o) |
org.grails.datastore.mapping.query.api.Criteria |
ilike(java.lang.String propertyName,
java.lang.Object propertyValue)
Creates a Criterion with from the specified property name and "ilike" (a case sensitive version of "like") expression
|
org.grails.datastore.mapping.query.api.Criteria |
in(java.lang.String propertyName,
java.util.Collection values)
Applys a "in" contrain on the specified property
|
org.grails.datastore.mapping.query.api.Criteria |
in(java.lang.String propertyName,
java.lang.Object[] values)
Applys a "in" contrain on the specified property
|
org.grails.datastore.mapping.query.api.Criteria |
inList(java.lang.String propertyName,
java.util.Collection values)
Delegates to in as in is a Groovy keyword
|
org.grails.datastore.mapping.query.api.Criteria |
inList(java.lang.String propertyName,
java.lang.Object[] values)
Delegates to in as in is a Groovy keyword
|
java.lang.Object |
invokeMethod(java.lang.String name,
java.lang.Object obj) |
org.grails.datastore.mapping.query.api.Criteria |
isEmpty(java.lang.String property) |
org.grails.datastore.mapping.query.api.Criteria |
isNotEmpty(java.lang.String property) |
org.grails.datastore.mapping.query.api.Criteria |
isNotNull(java.lang.String property) |
org.grails.datastore.mapping.query.api.Criteria |
isNull(java.lang.String property) |
void |
join(java.lang.String associationPath)
Use a join query
|
org.grails.datastore.mapping.query.api.Criteria |
le(java.lang.String propertyName,
java.lang.Object propertyValue)
Creates a "less than or equal to" Criterion based on the specified property name and value
|
org.grails.datastore.mapping.query.api.Criteria |
leAll(java.lang.String propertyName,
groovy.lang.Closure<?> propertyValue)
Creates a subquery criterion that ensures the given property is less than all the given returned values
|
org.grails.datastore.mapping.query.api.Criteria |
leAll(java.lang.String propertyName,
org.grails.datastore.mapping.query.api.QueryableCriteria propertyValue)
Creates a subquery criterion that ensures the given property is less than all the given returned values
|
org.grails.datastore.mapping.query.api.Criteria |
leProperty(java.lang.String propertyName,
java.lang.String otherPropertyName)
Creates a Criterion that tests if the first property is less than or equal to the second property
|
org.grails.datastore.mapping.query.api.Criteria |
like(java.lang.String propertyName,
java.lang.Object propertyValue)
Creates a Criterion with from the specified property name and "like" expression
|
void |
lock(boolean shouldLock)
Whether a pessimistic lock should be obtained.
|
org.grails.datastore.mapping.query.api.Criteria |
lt(java.lang.String propertyName,
java.lang.Object propertyValue)
Creates a "less than" Criterion based on the specified property name and value
|
org.grails.datastore.mapping.query.api.Criteria |
ltAll(java.lang.String propertyName,
groovy.lang.Closure<?> propertyValue)
Creates a subquery criterion that ensures the given property is less than all the given returned values
|
org.grails.datastore.mapping.query.api.Criteria |
ltAll(java.lang.String propertyName,
org.grails.datastore.mapping.query.api.QueryableCriteria propertyValue)
Creates a subquery criterion that ensures the given property is less than all the given returned values
|
org.grails.datastore.mapping.query.api.Criteria |
lte(java.lang.String s,
java.lang.Object o) |
org.grails.datastore.mapping.query.api.Criteria |
ltProperty(java.lang.String propertyName,
java.lang.String otherPropertyName)
Creates a Criterion that tests if the first property is less than the second property
|
org.grails.datastore.mapping.query.api.ProjectionList |
max(java.lang.String propertyName)
Adds a projection that allows the criteria to retrieve a maximum property value
|
org.grails.datastore.mapping.query.api.ProjectionList |
max(java.lang.String propertyName,
java.lang.String alias)
Adds a projection that allows the criteria to retrieve a maximum property value
|
org.grails.datastore.mapping.query.api.ProjectionList |
min(java.lang.String propertyName)
Adds a projection that allows the criteria to retrieve a minimum property value
|
org.grails.datastore.mapping.query.api.ProjectionList |
min(java.lang.String propertyName,
java.lang.String alias)
Adds a projection that allows the criteria to retrieve a minimum property value
|
org.grails.datastore.mapping.query.api.Criteria |
ne(java.lang.String propertyName,
java.lang.Object propertyValue)
Creates a "not equal" Criterion based on the specified property name and value
|
org.grails.datastore.mapping.query.api.Criteria |
neProperty(java.lang.String propertyName,
java.lang.String otherPropertyName)
Creates a Criterion that compares to class properties for !equality
|
org.grails.datastore.mapping.query.api.Criteria |
notEqual(java.lang.String propertyName,
java.lang.Object propertyValue) |
org.grails.datastore.mapping.query.api.Criteria |
order(org.hibernate.criterion.Order o)
Orders by the specified property name (defaults to ascending)
|
org.grails.datastore.mapping.query.api.Criteria |
order(java.lang.String propertyName)
Orders by the specified property name (defaults to ascending)
|
org.grails.datastore.mapping.query.api.Criteria |
order(java.lang.String propertyName,
java.lang.String direction)
Orders by the specified property name and direction
|
org.grails.datastore.mapping.query.api.ProjectionList |
property(java.lang.String propertyName)
A projection that selects a property name
|
org.grails.datastore.mapping.query.api.ProjectionList |
property(java.lang.String propertyName,
java.lang.String alias)
A projection that selects a property name
|
void |
resultTransformer(org.hibernate.transform.ResultTransformer transformer)
Sets the resultTransformer.
|
org.grails.datastore.mapping.query.api.Criteria |
rlike(java.lang.String propertyName,
java.lang.Object propertyValue)
Creates a Criterion with from the specified property name and "rlike" (a regular expression version of "like") expression
|
org.grails.datastore.mapping.query.api.ProjectionList |
rowCount()
Adds a projection that allows the criteria to return the row count
|
org.grails.datastore.mapping.query.api.ProjectionList |
rowCount(java.lang.String alias)
Adds a projection that allows the criteria to return the row count
|
void |
select(java.lang.String associationPath)
Use a select query
|
void |
setGrailsApplication(org.codehaus.groovy.grails.commons.GrailsApplication grailsApplication) |
void |
setUniqueResult(boolean uniqueResult)
Set whether a unique result should be returned
|
org.grails.datastore.mapping.query.api.Criteria |
sizeEq(java.lang.String propertyName,
int size)
Creates a Criterion that contrains a collection property by size
|
org.grails.datastore.mapping.query.api.Criteria |
sizeGe(java.lang.String propertyName,
int size)
Creates a Criterion that contrains a collection property to be greater than or equal to the given size
|
org.grails.datastore.mapping.query.api.Criteria |
sizeGt(java.lang.String propertyName,
int size)
Creates a Criterion that contrains a collection property to be greater than the given size
|
org.grails.datastore.mapping.query.api.Criteria |
sizeLe(java.lang.String propertyName,
int size)
Creates a Criterion that contrains a collection property to be less than or equal to the given size
|
org.grails.datastore.mapping.query.api.Criteria |
sizeLt(java.lang.String propertyName,
int size)
Creates a Criterion that contrains a collection property to be less than to the given size
|
org.grails.datastore.mapping.query.api.Criteria |
sizeNe(java.lang.String propertyName,
int size)
Creates a Criterion that contrains a collection property to be not equal to the given size
|
protected void |
sqlGroupProjection(java.lang.String sql,
java.lang.String groupBy,
java.util.List<java.lang.String> columnAliases,
java.util.List<org.hibernate.type.Type> types)
Adds a sql projection to the criteria
|
protected void |
sqlProjection(java.lang.String sql,
java.util.List<java.lang.String> columnAliases,
java.util.List<org.hibernate.type.Type> types)
Adds a sql projection to the criteria
|
protected void |
sqlProjection(java.lang.String sql,
java.lang.String columnAlias,
org.hibernate.type.Type type)
Adds a sql projection to the criteria
|
org.grails.datastore.mapping.query.api.Criteria |
sqlRestriction(java.lang.String sqlRestriction)
Applies a sql restriction to the results to allow something like:
|
org.grails.datastore.mapping.query.api.Criteria |
sqlRestriction(java.lang.String sqlRestriction,
java.util.List<?> values)
Applies a sql restriction to the results to allow something like:
|
org.grails.datastore.mapping.query.api.ProjectionList |
sum(java.lang.String propertyName)
Adds a projection that allows the criteria to retrieve the sum of the results of a property
|
org.grails.datastore.mapping.query.api.ProjectionList |
sum(java.lang.String propertyName,
java.lang.String alias)
Adds a projection that allows the criteria to retrieve the sum of the results of a property
|
public static final java.lang.String AND
public static final java.lang.String IS_NULL
public static final java.lang.String IS_NOT_NULL
public static final java.lang.String NOT
public static final java.lang.String OR
public static final java.lang.String ID_EQUALS
public static final java.lang.String IS_EMPTY
public static final java.lang.String IS_NOT_EMPTY
public static final java.lang.String RLIKE
public static final java.lang.String BETWEEN
public static final java.lang.String EQUALS
public static final java.lang.String EQUALS_PROPERTY
public static final java.lang.String GREATER_THAN
public static final java.lang.String GREATER_THAN_PROPERTY
public static final java.lang.String GREATER_THAN_OR_EQUAL
public static final java.lang.String GREATER_THAN_OR_EQUAL_PROPERTY
public static final java.lang.String ILIKE
public static final java.lang.String IN
public static final java.lang.String LESS_THAN
public static final java.lang.String LESS_THAN_PROPERTY
public static final java.lang.String LESS_THAN_OR_EQUAL
public static final java.lang.String LESS_THAN_OR_EQUAL_PROPERTY
public static final java.lang.String LIKE
public static final java.lang.String NOT_EQUAL
public static final java.lang.String NOT_EQUAL_PROPERTY
public static final java.lang.String SIZE_EQUALS
public static final java.lang.String ORDER_DESCENDING
public static final java.lang.String ORDER_ASCENDING
public static final org.hibernate.type.Type BOOLEAN
public static final org.hibernate.type.Type YES_NO
public static final org.hibernate.type.Type BYTE
public static final org.hibernate.type.Type CHARACTER
public static final org.hibernate.type.Type SHORT
public static final org.hibernate.type.Type INTEGER
public static final org.hibernate.type.Type LONG
public static final org.hibernate.type.Type FLOAT
public static final org.hibernate.type.Type DOUBLE
public static final org.hibernate.type.Type BIG_DECIMAL
public static final org.hibernate.type.Type BIG_INTEGER
public static final org.hibernate.type.Type STRING
public static final org.hibernate.type.Type NUMERIC_BOOLEAN
public static final org.hibernate.type.Type TRUE_FALSE
public static final org.hibernate.type.Type URL
public static final org.hibernate.type.Type TIME
public static final org.hibernate.type.Type DATE
public static final org.hibernate.type.Type TIMESTAMP
public static final org.hibernate.type.Type CALENDAR
public static final org.hibernate.type.Type CALENDAR_DATE
public static final org.hibernate.type.Type CLASS
public static final org.hibernate.type.Type LOCALE
public static final org.hibernate.type.Type CURRENCY
public static final org.hibernate.type.Type TIMEZONE
public static final org.hibernate.type.Type UUID_BINARY
public static final org.hibernate.type.Type UUID_CHAR
public static final org.hibernate.type.Type BINARY
public static final org.hibernate.type.Type WRAPPER_BINARY
public static final org.hibernate.type.Type IMAGE
public static final org.hibernate.type.Type BLOB
public static final org.hibernate.type.Type MATERIALIZED_BLOB
public static final org.hibernate.type.Type WRAPPER_MATERIALIZED_BLOB
public static final org.hibernate.type.Type CHAR_ARRAY
public static final org.hibernate.type.Type CHARACTER_ARRAY
public static final org.hibernate.type.Type TEXT
public static final org.hibernate.type.Type CLOB
public static final org.hibernate.type.Type MATERIALIZED_CLOB
public static final org.hibernate.type.Type WRAPPER_CHARACTERS_CLOB
public static final org.hibernate.type.Type CHARACTERS_CLOB
public static final org.hibernate.type.Type SERIALIZABLE
public HibernateCriteriaBuilder(java.lang.Class targetClass,
org.hibernate.SessionFactory sessionFactory)
public HibernateCriteriaBuilder(java.lang.Class targetClass,
org.hibernate.SessionFactory sessionFactory,
boolean uniqueResult)
public void setGrailsApplication(org.codehaus.groovy.grails.commons.GrailsApplication grailsApplication)
public org.hibernate.Criteria getInstance()
public void setUniqueResult(boolean uniqueResult)
uniqueResult - True if a unique result should be returnedpublic org.grails.datastore.mapping.query.api.ProjectionList property(java.lang.String propertyName)
property in interface org.grails.datastore.mapping.query.api.ProjectionListpropertyName - The name of the propertypublic org.grails.datastore.mapping.query.api.ProjectionList property(java.lang.String propertyName,
java.lang.String alias)
propertyName - The name of the propertyalias - The alias to useprotected void addProjectionToList(org.hibernate.criterion.Projection propertyProjection,
java.lang.String alias)
propertyProjection - The projectionalias - The aliasprotected void sqlProjection(java.lang.String sql,
java.lang.String columnAlias,
org.hibernate.type.Type type)
sql - SQL projecting a single valuecolumnAlias - column alias for the projected valuetype - the type of the projected valueprotected void sqlProjection(java.lang.String sql,
java.util.List<java.lang.String> columnAliases,
java.util.List<org.hibernate.type.Type> types)
sql - SQL projectingcolumnAliases - List of column aliases for the projected valuestypes - List of types for the projected valuesprotected void sqlGroupProjection(java.lang.String sql,
java.lang.String groupBy,
java.util.List<java.lang.String> columnAliases,
java.util.List<org.hibernate.type.Type> types)
sql - SQL projectinggroupBy - group by clausecolumnAliases - List of column aliases for the projected valuestypes - List of types for the projected valuespublic org.grails.datastore.mapping.query.api.ProjectionList distinct(java.lang.String propertyName)
distinct in interface org.grails.datastore.mapping.query.api.ProjectionListpropertyName - The property namepublic org.grails.datastore.mapping.query.api.ProjectionList distinct(java.lang.String propertyName,
java.lang.String alias)
propertyName - The property namealias - The alias to usepublic org.grails.datastore.mapping.query.api.ProjectionList distinct(java.util.Collection propertyNames)
propertyNames - The list of distince property namespublic org.grails.datastore.mapping.query.api.ProjectionList distinct(java.util.Collection propertyNames,
java.lang.String alias)
propertyNames - The list of distince property namesalias - The alias to usepublic org.grails.datastore.mapping.query.api.ProjectionList avg(java.lang.String propertyName)
avg in interface org.grails.datastore.mapping.query.api.ProjectionListpropertyName - The name of the propertypublic org.grails.datastore.mapping.query.api.ProjectionList avg(java.lang.String propertyName,
java.lang.String alias)
propertyName - The name of the propertyalias - The alias to usepublic void join(java.lang.String associationPath)
associationPath - The path of the associationpublic void lock(boolean shouldLock)
shouldLock - True if it shouldpublic void select(java.lang.String associationPath)
associationPath - The path of the associationpublic void cache(boolean shouldCache)
shouldCache - True if the query should be cachedpublic java.lang.Class<?> getTargetClass()
public static org.hibernate.criterion.DetachedCriteria getHibernateDetachedCriteria(org.grails.datastore.mapping.query.api.QueryableCriteria<?> queryableCriteria)
public void count(java.lang.String propertyName)
propertyName - The name of the propertypublic void count(java.lang.String propertyName,
java.lang.String alias)
propertyName - The name of the propertyalias - The alias to usepublic org.grails.datastore.mapping.query.api.ProjectionList id()
id in interface org.grails.datastore.mapping.query.api.ProjectionListpublic org.grails.datastore.mapping.query.api.ProjectionList count()
count in interface org.grails.datastore.mapping.query.api.ProjectionListpublic org.grails.datastore.mapping.query.api.ProjectionList countDistinct(java.lang.String propertyName)
countDistinct in interface org.grails.datastore.mapping.query.api.ProjectionListpropertyName - The name of the propertypublic org.grails.datastore.mapping.query.api.ProjectionList distinct()
distinct in interface org.grails.datastore.mapping.query.api.ProjectionListpublic org.grails.datastore.mapping.query.api.ProjectionList countDistinct(java.lang.String propertyName,
java.lang.String alias)
propertyName - The name of the propertyalias - The alias to usepublic void groupProperty(java.lang.String propertyName)
propertyName - The name of the propertypublic void groupProperty(java.lang.String propertyName,
java.lang.String alias)
propertyName - The name of the propertyalias - The alias to usepublic org.grails.datastore.mapping.query.api.ProjectionList max(java.lang.String propertyName)
max in interface org.grails.datastore.mapping.query.api.ProjectionListpropertyName - The name of the propertypublic org.grails.datastore.mapping.query.api.ProjectionList max(java.lang.String propertyName,
java.lang.String alias)
propertyName - The name of the propertyalias - The alias to usepublic org.grails.datastore.mapping.query.api.ProjectionList min(java.lang.String propertyName)
min in interface org.grails.datastore.mapping.query.api.ProjectionListpropertyName - The name of the propertypublic org.grails.datastore.mapping.query.api.ProjectionList min(java.lang.String propertyName,
java.lang.String alias)
alias - The alias to usepublic org.grails.datastore.mapping.query.api.ProjectionList rowCount()
rowCount in interface org.grails.datastore.mapping.query.api.ProjectionListpublic org.grails.datastore.mapping.query.api.ProjectionList rowCount(java.lang.String alias)
alias - The alias to usepublic org.grails.datastore.mapping.query.api.ProjectionList sum(java.lang.String propertyName)
sum in interface org.grails.datastore.mapping.query.api.ProjectionListpropertyName - The name of the propertypublic org.grails.datastore.mapping.query.api.ProjectionList sum(java.lang.String propertyName,
java.lang.String alias)
propertyName - The name of the propertyalias - The alias to usepublic void fetchMode(java.lang.String associationPath,
org.hibernate.FetchMode fetchMode)
associationPath - The name of the associated pathfetchMode - The fetch mode to setpublic void resultTransformer(org.hibernate.transform.ResultTransformer transformer)
transformer - The result transformer to use.public org.hibernate.Criteria createAlias(java.lang.String associationPath,
java.lang.String alias)
associationPath - A dot-seperated property pathalias - The alias to assign to the joined association (for later reference).createAlias(String, String, int)org.hibernate.HibernateException - Indicates a problem creating the sub criteriapublic org.hibernate.Criteria createAlias(java.lang.String associationPath,
java.lang.String alias,
int joinType)
associationPath - A dot-seperated property pathalias - The alias to assign to the joined association (for later reference).joinType - The type of join to use.org.hibernate.HibernateException - Indicates a problem creating the sub criteriacreateAlias(String, String)public org.grails.datastore.mapping.query.api.Criteria eqProperty(java.lang.String propertyName,
java.lang.String otherPropertyName)
eqProperty in interface org.grails.datastore.mapping.query.api.CriteriapropertyName - The first property nameotherPropertyName - The second property namepublic org.grails.datastore.mapping.query.api.Criteria neProperty(java.lang.String propertyName,
java.lang.String otherPropertyName)
neProperty in interface org.grails.datastore.mapping.query.api.CriteriapropertyName - The first property nameotherPropertyName - The second property namepublic org.grails.datastore.mapping.query.api.Criteria gtProperty(java.lang.String propertyName,
java.lang.String otherPropertyName)
gtProperty in interface org.grails.datastore.mapping.query.api.CriteriapropertyName - The first property nameotherPropertyName - The second property namepublic org.grails.datastore.mapping.query.api.Criteria geProperty(java.lang.String propertyName,
java.lang.String otherPropertyName)
geProperty in interface org.grails.datastore.mapping.query.api.CriteriapropertyName - The first property nameotherPropertyName - The second property namepublic org.grails.datastore.mapping.query.api.Criteria ltProperty(java.lang.String propertyName,
java.lang.String otherPropertyName)
ltProperty in interface org.grails.datastore.mapping.query.api.CriteriapropertyName - The first property nameotherPropertyName - The second property namepublic org.grails.datastore.mapping.query.api.Criteria leProperty(java.lang.String propertyName,
java.lang.String otherPropertyName)
leProperty in interface org.grails.datastore.mapping.query.api.CriteriapropertyName - The first property nameotherPropertyName - The second property namepublic org.grails.datastore.mapping.query.api.Criteria eqAll(java.lang.String propertyName,
groovy.lang.Closure<?> propertyValue)
propertyName - The property namepropertyValue - The property valuepublic org.grails.datastore.mapping.query.api.Criteria gtAll(java.lang.String propertyName,
groovy.lang.Closure<?> propertyValue)
propertyName - The property namepropertyValue - The property valuepublic org.grails.datastore.mapping.query.api.Criteria ltAll(java.lang.String propertyName,
groovy.lang.Closure<?> propertyValue)
propertyName - The property namepropertyValue - The property valuepublic org.grails.datastore.mapping.query.api.Criteria geAll(java.lang.String propertyName,
groovy.lang.Closure<?> propertyValue)
propertyName - The property namepropertyValue - The property valuepublic org.grails.datastore.mapping.query.api.Criteria leAll(java.lang.String propertyName,
groovy.lang.Closure<?> propertyValue)
propertyName - The property namepropertyValue - The property valuepublic org.grails.datastore.mapping.query.api.Criteria eqAll(java.lang.String propertyName,
org.grails.datastore.mapping.query.api.QueryableCriteria propertyValue)
eqAll in interface org.grails.datastore.mapping.query.api.CriteriapropertyName - The property namepropertyValue - The property valuepublic org.grails.datastore.mapping.query.api.Criteria gtAll(java.lang.String propertyName,
org.grails.datastore.mapping.query.api.QueryableCriteria propertyValue)
gtAll in interface org.grails.datastore.mapping.query.api.CriteriapropertyName - The property namepropertyValue - The property valuepublic org.grails.datastore.mapping.query.api.Criteria ltAll(java.lang.String propertyName,
org.grails.datastore.mapping.query.api.QueryableCriteria propertyValue)
ltAll in interface org.grails.datastore.mapping.query.api.CriteriapropertyName - The property namepropertyValue - The property valuepublic org.grails.datastore.mapping.query.api.Criteria geAll(java.lang.String propertyName,
org.grails.datastore.mapping.query.api.QueryableCriteria propertyValue)
geAll in interface org.grails.datastore.mapping.query.api.CriteriapropertyName - The property namepropertyValue - The property valuepublic org.grails.datastore.mapping.query.api.Criteria leAll(java.lang.String propertyName,
org.grails.datastore.mapping.query.api.QueryableCriteria propertyValue)
leAll in interface org.grails.datastore.mapping.query.api.CriteriapropertyName - The property namepropertyValue - The property valuepublic org.grails.datastore.mapping.query.api.Criteria gt(java.lang.String propertyName,
java.lang.Object propertyValue)
gt in interface org.grails.datastore.mapping.query.api.CriteriapropertyName - The property namepropertyValue - The property valuepublic org.grails.datastore.mapping.query.api.Criteria lte(java.lang.String s,
java.lang.Object o)
lte in interface org.grails.datastore.mapping.query.api.Criteriapublic org.grails.datastore.mapping.query.api.Criteria ge(java.lang.String propertyName,
java.lang.Object propertyValue)
ge in interface org.grails.datastore.mapping.query.api.CriteriapropertyName - The property namepropertyValue - The property valuepublic org.grails.datastore.mapping.query.api.Criteria lt(java.lang.String propertyName,
java.lang.Object propertyValue)
lt in interface org.grails.datastore.mapping.query.api.CriteriapropertyName - The property namepropertyValue - The property valuepublic org.grails.datastore.mapping.query.api.Criteria le(java.lang.String propertyName,
java.lang.Object propertyValue)
le in interface org.grails.datastore.mapping.query.api.CriteriapropertyName - The property namepropertyValue - The property valuepublic org.grails.datastore.mapping.query.api.Criteria idEquals(java.lang.Object o)
idEquals in interface org.grails.datastore.mapping.query.api.Criteriapublic org.grails.datastore.mapping.query.api.Criteria isEmpty(java.lang.String property)
isEmpty in interface org.grails.datastore.mapping.query.api.Criteriapublic org.grails.datastore.mapping.query.api.Criteria isNotEmpty(java.lang.String property)
isNotEmpty in interface org.grails.datastore.mapping.query.api.Criteriapublic org.grails.datastore.mapping.query.api.Criteria isNull(java.lang.String property)
isNull in interface org.grails.datastore.mapping.query.api.Criteriapublic org.grails.datastore.mapping.query.api.Criteria isNotNull(java.lang.String property)
isNotNull in interface org.grails.datastore.mapping.query.api.Criteriapublic org.grails.datastore.mapping.query.api.Criteria eq(java.lang.String propertyName,
java.lang.Object propertyValue)
eq in interface org.grails.datastore.mapping.query.api.CriteriapropertyName - The property namepropertyValue - The property valuepublic org.grails.datastore.mapping.query.api.Criteria idEq(java.lang.Object o)
idEq in interface org.grails.datastore.mapping.query.api.Criteriapublic org.grails.datastore.mapping.query.api.Criteria eq(java.util.Map params,
java.lang.String propertyName,
java.lang.Object propertyValue)
eq 'firstName', 'Fred', ignoreCase: true.params - optional map with customization parameters; currently only 'ignoreCase' is supported.propertyName - propertyValue - public org.grails.datastore.mapping.query.api.Criteria eq(java.lang.String propertyName,
java.lang.Object propertyValue,
java.util.Map params)
params map contains true
under the 'ignoreCase' key.propertyName - The property namepropertyValue - The property valueparams - optional map with customization parameters; currently only 'ignoreCase' is supported.public org.grails.datastore.mapping.query.api.Criteria sqlRestriction(java.lang.String sqlRestriction)
def results = Person.withCriteria {
sqlRestriction "char_length(first_name) <= 4"
}
sqlRestriction - the sql restrictionpublic org.grails.datastore.mapping.query.api.Criteria sqlRestriction(java.lang.String sqlRestriction,
java.util.List<?> values)
def results = Person.withCriteria {
sqlRestriction "char_length(first_name) < ? AND char_length(first_name) > ?", [4, 9]
}
sqlRestriction - the sql restrictionvalues - jdbc parameterspublic org.grails.datastore.mapping.query.api.Criteria like(java.lang.String propertyName,
java.lang.Object propertyValue)
like in interface org.grails.datastore.mapping.query.api.CriteriapropertyName - The property namepropertyValue - The like valuepublic org.grails.datastore.mapping.query.api.Criteria rlike(java.lang.String propertyName,
java.lang.Object propertyValue)
rlike in interface org.grails.datastore.mapping.query.api.CriteriapropertyName - The property namepropertyValue - The ilike valuepublic org.grails.datastore.mapping.query.api.Criteria ilike(java.lang.String propertyName,
java.lang.Object propertyValue)
ilike in interface org.grails.datastore.mapping.query.api.CriteriapropertyName - The property namepropertyValue - The ilike valuepublic org.grails.datastore.mapping.query.api.Criteria in(java.lang.String propertyName,
java.util.Collection values)
in in interface org.grails.datastore.mapping.query.api.CriteriapropertyName - The property namevalues - A collection of valuespublic org.grails.datastore.mapping.query.api.Criteria inList(java.lang.String propertyName,
java.util.Collection values)
inList in interface org.grails.datastore.mapping.query.api.Criteriapublic org.grails.datastore.mapping.query.api.Criteria inList(java.lang.String propertyName,
java.lang.Object[] values)
inList in interface org.grails.datastore.mapping.query.api.Criteriapublic org.grails.datastore.mapping.query.api.Criteria in(java.lang.String propertyName,
java.lang.Object[] values)
in in interface org.grails.datastore.mapping.query.api.CriteriapropertyName - The property namevalues - A collection of valuespublic org.grails.datastore.mapping.query.api.Criteria order(java.lang.String propertyName)
order in interface org.grails.datastore.mapping.query.api.CriteriapropertyName - The property name to order bypublic org.grails.datastore.mapping.query.api.Criteria order(org.hibernate.criterion.Order o)
o - The property name to order bypublic org.grails.datastore.mapping.query.api.Criteria order(java.lang.String propertyName,
java.lang.String direction)
order in interface org.grails.datastore.mapping.query.api.CriteriapropertyName - The property name to order bydirection - Either "asc" for ascending or "desc" for descendingpublic org.grails.datastore.mapping.query.api.Criteria sizeEq(java.lang.String propertyName,
int size)
sizeEq in interface org.grails.datastore.mapping.query.api.CriteriapropertyName - The property namesize - The size to constrain bypublic org.grails.datastore.mapping.query.api.Criteria sizeGt(java.lang.String propertyName,
int size)
sizeGt in interface org.grails.datastore.mapping.query.api.CriteriapropertyName - The property namesize - The size to constrain bypublic org.grails.datastore.mapping.query.api.Criteria sizeGe(java.lang.String propertyName,
int size)
sizeGe in interface org.grails.datastore.mapping.query.api.CriteriapropertyName - The property namesize - The size to constrain bypublic org.grails.datastore.mapping.query.api.Criteria sizeLe(java.lang.String propertyName,
int size)
sizeLe in interface org.grails.datastore.mapping.query.api.CriteriapropertyName - The property namesize - The size to constrain bypublic org.grails.datastore.mapping.query.api.Criteria sizeLt(java.lang.String propertyName,
int size)
sizeLt in interface org.grails.datastore.mapping.query.api.CriteriapropertyName - The property namesize - The size to constrain bypublic org.grails.datastore.mapping.query.api.Criteria sizeNe(java.lang.String propertyName,
int size)
sizeNe in interface org.grails.datastore.mapping.query.api.CriteriapropertyName - The property namesize - The size to constrain bypublic org.grails.datastore.mapping.query.api.Criteria ne(java.lang.String propertyName,
java.lang.Object propertyValue)
ne in interface org.grails.datastore.mapping.query.api.CriteriapropertyName - The property namepropertyValue - The property valuepublic org.grails.datastore.mapping.query.api.Criteria notEqual(java.lang.String propertyName,
java.lang.Object propertyValue)
public org.grails.datastore.mapping.query.api.Criteria between(java.lang.String propertyName,
java.lang.Object lo,
java.lang.Object hi)
between in interface org.grails.datastore.mapping.query.api.CriteriapropertyName - The property namelo - The low valuehi - The high valuepublic org.grails.datastore.mapping.query.api.Criteria gte(java.lang.String s,
java.lang.Object o)
gte in interface org.grails.datastore.mapping.query.api.Criteriapublic java.lang.Object invokeMethod(java.lang.String name,
java.lang.Object obj)
invokeMethod in interface groovy.lang.GroovyObjectinvokeMethod in class groovy.lang.GroovyObjectSupportpublic org.hibernate.Criteria buildCriteria(groovy.lang.Closure<?> criteriaClosure)