|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||
java.lang.Objectorg.ow2.dragon.persistence.util.HibernateQueryHelper
public class HibernateQueryHelper
A JPA Query Builder. It helps building complex JPA Query by abstracting some query constructs like grouped OR or AND, order by, paging...
| Nested Class Summary | |
|---|---|
static class |
HibernateQueryHelper.Parameter
A class that handles parameter name, value and predicate |
| Field Summary | |
|---|---|
static java.lang.String |
CLAUSE_FROM
|
static java.lang.String |
CLAUSE_GROUPBY
|
static java.lang.String |
CLAUSE_HAVING
|
static java.lang.String |
CLAUSE_ORDERBY
|
static java.lang.String |
CLAUSE_SELECT
|
static java.lang.String |
CLAUSE_WHERE
|
static java.lang.String |
INNER_JOIN
|
static java.lang.String |
LEFT_OUTER_JOIN
|
static java.lang.String |
OPERATOR_AND
|
static java.lang.String |
OPERATOR_DISTINCT
|
static java.lang.String |
OPERATOR_OR
|
static java.lang.String |
OPERATOR_UPPER
|
static java.lang.String |
PREDICATE_EQUALS
|
static java.lang.String |
PREDICATE_IN
|
static java.lang.String |
PREDICATE_LIKE
|
static java.lang.String |
PREDICATE_NOTEQUALS
|
static java.lang.String |
SORT_ASC
|
static java.lang.String |
SORT_DESC
|
static java.lang.String |
WILDCARD
|
| Constructor Summary | |
|---|---|
HibernateQueryHelper()
Creates a new builder with an empty params vector and an empty query |
|
HibernateQueryHelper(java.lang.String sql)
Creates a new builder with an empty params vector and a query buffer initialized with the given sql string |
|
| Method Summary | |
|---|---|
void |
addValue(java.lang.Object obj)
Add a values to the inner values vector |
HibernateQueryHelper |
AND()
Append an sql "and" operator to the inner sql buffer |
HibernateQueryHelper |
append(java.lang.String sql)
Append the given sql string to the inner sql buffer |
HibernateQueryHelper |
appendCondition(java.lang.String operator,
HibernateQueryHelper.Parameter... params)
Appends a list of conditions on parameter values, linked by the specified operator. |
HibernateQueryHelper |
appendGroupedAnd(HibernateQueryHelper.Parameter... params)
See appendCondition(String, Parameter...). |
HibernateQueryHelper |
appendGroupedOr(HibernateQueryHelper.Parameter... params)
See appendCondition(String, Parameter...). |
HibernateQueryHelper |
appendInList(java.lang.String term,
java.util.List<?> list)
Appends a "in" list condition on a particuler term. |
HibernateQueryHelper |
appendInListWithAnd(java.lang.String term,
java.util.List<?> list)
See appendInList(String, List). |
HibernateQueryHelper |
appendInnerJoinStatement(java.lang.String parentAlias,
java.lang.String fieldName,
java.lang.String joinedAlias)
Append an inner join statement for a given field. |
HibernateQueryHelper |
appendLeftOuterJoinStatement(java.lang.String parentAlias,
java.lang.String fieldName,
java.lang.String joinedAlias)
Append an left outer join statement for a given field. |
HibernateQueryHelper |
appendMultipleInnerJoinStatement(java.lang.String parentAlias,
java.lang.String... properties)
For each properties: if the property is a dotted property (contains one or more "." character), append an inner join statement for each field following the dot. |
HibernateQueryHelper |
appendMultipleLeftOuterJoinStatement(java.lang.String parentAlias,
java.lang.String... properties)
For each properties: if the property is a dotted property (contains one or more "." character), append an left outer join statement for each field following the dot. |
HibernateQueryHelper |
appendSearchCriteriaInQuery(java.lang.String[] criterii,
java.lang.String[] properties,
java.lang.String clazzAlias,
java.lang.String predicate,
boolean caseSensitive)
Append a "where" clause to the sql query. |
HibernateQueryHelper |
appendSelectDistinctStatement(java.lang.String simpleClazzName,
java.lang.String fullClazzName)
Appends a select distinct statement with the simpleClazzName.toLowerCase as alias |
HibernateQueryHelper |
appendSelectStatement(java.lang.String simpleClazzName,
java.lang.String fullClazzName)
Appends a select statement with the simpleClazzName.toLowerCase as alias |
HibernateQueryHelper |
appendSortOption(RequestOptions requestOptions,
java.lang.String clazzAlias)
Append an "order by" sql clause to the inner sql string. |
org.hibernate.Query |
buildHibernatePaginatedQuery(org.hibernate.Session session,
RequestOptions requestOptions)
Build a JPA query from the inner sql statement and values. |
org.hibernate.Query |
buildHibernateQuery(org.hibernate.Session session)
Build a JPA query from the inner sql statement and values |
HibernateQueryHelper |
closeParen()
Append an close paren character (")") to the inner sql buffer |
HibernateQueryHelper |
comma()
Append a comma character (",") to the inner sql buffer |
static com.trg.search.ISearch |
createSearchContext(java.lang.Class<?> clazz,
java.lang.String[] criterii,
java.lang.String[] properties,
RequestOptions requestOptions,
java.lang.String predicate)
|
java.lang.String |
createSearchedProperty(java.lang.String clazzAlias,
java.lang.String p,
boolean caseSensitive)
Create a searched property. |
HibernateQueryHelper |
DISTINCT()
Append an sql "distinct" operator to the inner sql buffer |
HibernateQueryHelper |
dot()
Append a dot character (".") to the inner sql buffer |
HibernateQueryHelper |
FROM()
Append an sql "from" clause to the inner sql buffer |
HibernateQueryHelper |
GROUPBY()
Append an sql "group by" operator to the inner sql buffer |
HibernateQueryHelper |
HAVING()
Append an sql "having" operator to the inner sql buffer |
HibernateQueryHelper |
IN()
Append an sql "in" operator to the inner sql buffer |
HibernateQueryHelper |
INNER_JOIN()
Append an sql "inner join" operator to the inner sql buffer |
HibernateQueryHelper |
LEFT_OUTER_JOIN()
Append an sql "left outer join" operator to the inner sql buffer |
HibernateQueryHelper |
openParen()
Append an open paren character ("(") to the inner sql buffer |
HibernateQueryHelper |
OR()
Append an sql "or" operator to the inner sql buffer |
HibernateQueryHelper |
ORDERBY()
Append an sql "order by" operator to the inner sql buffer |
HibernateQueryHelper |
pad()
Append a blank character (" ") to the inner sql buffer |
HibernateQueryHelper |
param()
Append a question mark character ("?") |
HibernateQueryHelper |
SELECT()
Append an sql "select" clause to the inner sql buffer |
static java.util.List |
sortAndPaginateByCriteria(org.springframework.orm.hibernate3.HibernateTemplate template,
RequestOptions requestOptions,
org.hibernate.criterion.DetachedCriteria detachedCriteria)
|
java.lang.String |
toString()
|
HibernateQueryHelper |
UPPER()
Append an sql "UPPER" operator to the inner sql buffer |
HibernateQueryHelper |
WHERE()
Append an sql "where" operator to the inner sql buffer |
| Methods inherited from class java.lang.Object |
|---|
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait |
| Field Detail |
|---|
public static final java.lang.String CLAUSE_SELECT
public static final java.lang.String OPERATOR_DISTINCT
public static final java.lang.String CLAUSE_FROM
public static final java.lang.String CLAUSE_WHERE
public static final java.lang.String CLAUSE_GROUPBY
public static final java.lang.String CLAUSE_ORDERBY
public static final java.lang.String CLAUSE_HAVING
public static final java.lang.String OPERATOR_OR
public static final java.lang.String OPERATOR_AND
public static final java.lang.String PREDICATE_EQUALS
public static final java.lang.String PREDICATE_NOTEQUALS
public static final java.lang.String PREDICATE_LIKE
public static final java.lang.String PREDICATE_IN
public static final java.lang.String SORT_ASC
public static final java.lang.String SORT_DESC
public static final java.lang.String WILDCARD
public static final java.lang.String INNER_JOIN
public static final java.lang.String LEFT_OUTER_JOIN
public static final java.lang.String OPERATOR_UPPER
| Constructor Detail |
|---|
public HibernateQueryHelper()
public HibernateQueryHelper(java.lang.String sql)
sql - an sql string| Method Detail |
|---|
public HibernateQueryHelper append(java.lang.String sql)
sql - an sql string
public HibernateQueryHelper pad()
public HibernateQueryHelper dot()
public HibernateQueryHelper openParen()
public HibernateQueryHelper closeParen()
public HibernateQueryHelper param()
public HibernateQueryHelper comma()
public HibernateQueryHelper SELECT()
public HibernateQueryHelper DISTINCT()
public HibernateQueryHelper FROM()
public HibernateQueryHelper AND()
public HibernateQueryHelper OR()
public HibernateQueryHelper UPPER()
public HibernateQueryHelper WHERE()
public HibernateQueryHelper IN()
public HibernateQueryHelper GROUPBY()
public HibernateQueryHelper ORDERBY()
public HibernateQueryHelper HAVING()
public HibernateQueryHelper INNER_JOIN()
public HibernateQueryHelper LEFT_OUTER_JOIN()
public HibernateQueryHelper appendGroupedAnd(HibernateQueryHelper.Parameter... params)
appendCondition(String, Parameter...). The operator used is
"and"
params - a list of parameters to link with the operator. Nothing
appended if null or empty
public HibernateQueryHelper appendGroupedOr(HibernateQueryHelper.Parameter... params)
appendCondition(String, Parameter...). The operator used is
"or"
params - a list of parameters to link with the operator. Nothing
appended if null or empty
public HibernateQueryHelper appendCondition(java.lang.String operator,
HibernateQueryHelper.Parameter... params)
operator - an operator ("or", "and",...). Nothing appended if null or
emptyparams - a list of parameters to link with the operator. Nothing
appended if null or empty
public HibernateQueryHelper appendSearchCriteriaInQuery(java.lang.String[] criterii,
java.lang.String[] properties,
java.lang.String clazzAlias,
java.lang.String predicate,
boolean caseSensitive)
criterii - an array of criterii ( String )properties - the properties to search onqueryString - the StringBuffer representing the hibernate queryclazzAlias - the simple class name used as aliaspredicate - type of search (strict equality, similarity...)caseSensitive - true if the search must be done with case sensitivity enabled
public java.lang.String createSearchedProperty(java.lang.String clazzAlias,
java.lang.String p,
boolean caseSensitive)
clazzAlias - the simple class name used as aliasp - a property (can be a simple or dotted property)caseSensitive - true if the search must be done with case sensitivity enabled
public HibernateQueryHelper appendInnerJoinStatement(java.lang.String parentAlias,
java.lang.String fieldName,
java.lang.String joinedAlias)
parentAlias - the alias of the parent part of the join statement. Nothing
appended if null or emptyfieldName - the field name to join. Nothing appended if null or emptyjoinedAlias - an alias for the joined field. Nothing appended if null or
empty
public HibernateQueryHelper appendLeftOuterJoinStatement(java.lang.String parentAlias,
java.lang.String fieldName,
java.lang.String joinedAlias)
parentAlias - the alias of the parent part of the join statement. Nothing
appended if null or emptyfieldName - the field name to join. Nothing appended if null or emptyjoinedAlias - an alias for the joined field. Nothing appended if null or
empty
public HibernateQueryHelper appendMultipleInnerJoinStatement(java.lang.String parentAlias,
java.lang.String... properties)
parentAlias - the alias of the parent part of all join statementproperties - properties array containing possible dotted properties.
Nothing appended if null or empty
public HibernateQueryHelper appendMultipleLeftOuterJoinStatement(java.lang.String parentAlias,
java.lang.String... properties)
parentAlias - the alias of the parent part of all join statementproperties - properties array containing possible dotted properties.
Nothing appended if null or empty
public HibernateQueryHelper appendSelectDistinctStatement(java.lang.String simpleClazzName,
java.lang.String fullClazzName)
simpleClazzName - the simple class name used as aliasfullClazzName - the full class name used for the select statement
public HibernateQueryHelper appendSelectStatement(java.lang.String simpleClazzName,
java.lang.String fullClazzName)
simpleClazzName - the simple class name used as aliasfullClazzName - the full class name used for the select statement
public HibernateQueryHelper appendSortOption(RequestOptions requestOptions,
java.lang.String clazzAlias)
requestOptions - request option defining sort criteria and paginationclazzAlias - the alias of the entities that will be ordered
public HibernateQueryHelper appendInListWithAnd(java.lang.String term,
java.util.List<?> list)
appendInList(String, List). Append a "and" operator before
appending list condition
term - a string term like "foo"list - a list of values like "bar1", "bar2". Nothing appended if null
or empty
public HibernateQueryHelper appendInList(java.lang.String term,
java.util.List<?> list)
term - a string term like "foo"list - a list of values like "bar1", "bar2". Nothing appended if null
or empty
public void addValue(java.lang.Object obj)
obj - the value to addpublic org.hibernate.Query buildHibernateQuery(org.hibernate.Session session)
em - a JPA entity manager
Query
public org.hibernate.Query buildHibernatePaginatedQuery(org.hibernate.Session session,
RequestOptions requestOptions)
em - a JPA entity manager
Querypublic java.lang.String toString()
toString in class java.lang.Object
public static java.util.List sortAndPaginateByCriteria(org.springframework.orm.hibernate3.HibernateTemplate template,
RequestOptions requestOptions,
org.hibernate.criterion.DetachedCriteria detachedCriteria)
public static com.trg.search.ISearch createSearchContext(java.lang.Class<?> clazz,
java.lang.String[] criterii,
java.lang.String[] properties,
RequestOptions requestOptions,
java.lang.String predicate)
|
||||||||||
| PREV CLASS NEXT CLASS | FRAMES NO FRAMES | |||||||||
| SUMMARY: NESTED | FIELD | CONSTR | METHOD | DETAIL: FIELD | CONSTR | METHOD | |||||||||