public class Query
extends java.lang.Object
implements java.io.Serializable
Use with DatabaseProvider.renderQuery(Query, net.java.ao.schema.TableNameConverter, boolean)
to produce the database-specific SQL.
Modifier and Type | Class and Description |
---|---|
static class |
Query.QueryType |
Constructor and Description |
---|
Query(Query.QueryType type,
java.lang.String fields)
Create a
Query and set the field list in the SELECT clause. |
Modifier and Type | Method and Description |
---|---|
Query |
alias(java.lang.Class<? extends RawEntity<?>> table,
java.lang.String alias) |
Query |
distinct() |
Query |
from(java.lang.Class<? extends RawEntity<?>> tableType) |
Query |
from(java.lang.String table) |
java.lang.String |
getAlias(java.lang.Class<? extends RawEntity<?>> table) |
java.lang.String[] |
getCanonicalFields(EntityInfo<?,?> entityInfo) |
java.lang.Iterable<java.lang.String> |
getFields() |
java.lang.String |
getGroupClause() |
java.lang.String |
getHavingClause() |
java.util.Map<java.lang.Class<? extends RawEntity<?>>,java.lang.String> |
getJoins() |
int |
getLimit() |
int |
getOffset() |
java.lang.String |
getOrderClause() |
java.lang.String |
getTable() |
java.lang.Class<? extends RawEntity<?>> |
getTableType() |
Query.QueryType |
getType() |
java.lang.String |
getWhereClause() |
java.lang.Object[] |
getWhereParams() |
Query |
group(java.lang.String clause) |
Query |
having(java.lang.String clause) |
boolean |
isDistinct() |
Query |
join(java.lang.Class<? extends RawEntity<?>> join) |
Query |
join(java.lang.Class<? extends RawEntity<?>> join,
java.lang.String on) |
Query |
limit(int limit) |
Query |
offset(int offset) |
Query |
order(java.lang.String clause) |
static Query |
select()
Create a
Query which will select the primary key field of the entity. |
static Query |
select(java.lang.String fields)
Create a
Query and set the field list in the SELECT clause. |
void |
setDistinct(boolean distinct) |
void |
setGroupClause(java.lang.String groupClause) |
void |
setHavingClause(java.lang.String havingClause) |
void |
setJoins(java.util.Map<java.lang.Class<? extends RawEntity<?>>,java.lang.String> joins) |
void |
setLimit(int limit) |
void |
setOffset(int offset) |
void |
setOrderClause(java.lang.String orderClause) |
protected void |
setParameters(EntityManager manager,
java.sql.PreparedStatement stmt) |
void |
setTable(java.lang.String table) |
void |
setTableType(java.lang.Class<? extends RawEntity<?>> tableType) |
void |
setWhereClause(java.lang.String whereClause) |
void |
setWhereParams(java.lang.Object[] whereParams) |
protected <K> java.lang.String |
toSQL(EntityInfo<? extends RawEntity<K>,K> entityInfo,
DatabaseProvider provider,
TableNameConverter converter,
boolean count) |
Query |
where(java.lang.String clause,
java.lang.Object... params) |
public Query(Query.QueryType type, java.lang.String fields)
Query
and set the field list in the SELECT
clause.fields
- The fields to select, as comma-delimited field names. Spaces are OK. Must not contain "*"
.java.lang.IllegalArgumentException
- if fields contains "*"
public java.lang.Iterable<java.lang.String> getFields()
public Query distinct()
public Query from(java.lang.String table)
public Query where(java.lang.String clause, java.lang.Object... params)
public Query order(java.lang.String clause)
public Query group(java.lang.String clause)
public Query having(java.lang.String clause)
public Query limit(int limit)
public Query offset(int offset)
public java.lang.String getAlias(java.lang.Class<? extends RawEntity<?>> table)
public boolean isDistinct()
public void setDistinct(boolean distinct)
public java.lang.Class<? extends RawEntity<?>> getTableType()
public void setTableType(java.lang.Class<? extends RawEntity<?>> tableType)
public java.lang.String getTable()
public void setTable(java.lang.String table)
public java.lang.String getWhereClause()
public void setWhereClause(java.lang.String whereClause)
public java.lang.Object[] getWhereParams()
public void setWhereParams(java.lang.Object[] whereParams)
public java.lang.String getOrderClause()
public void setOrderClause(java.lang.String orderClause)
public java.lang.String getGroupClause()
public void setGroupClause(java.lang.String groupClause)
public java.lang.String getHavingClause()
public void setHavingClause(java.lang.String havingClause)
public int getLimit()
public void setLimit(int limit)
public int getOffset()
public void setOffset(int offset)
public java.util.Map<java.lang.Class<? extends RawEntity<?>>,java.lang.String> getJoins()
public void setJoins(java.util.Map<java.lang.Class<? extends RawEntity<?>>,java.lang.String> joins)
public Query.QueryType getType()
public java.lang.String[] getCanonicalFields(EntityInfo<?,?> entityInfo)
protected <K> java.lang.String toSQL(EntityInfo<? extends RawEntity<K>,K> entityInfo, DatabaseProvider provider, TableNameConverter converter, boolean count)
protected void setParameters(EntityManager manager, java.sql.PreparedStatement stmt) throws java.sql.SQLException
java.sql.SQLException
public static Query select()
Query
which will select the primary key field of the entity.public static Query select(java.lang.String fields)
Query
and set the field list in the SELECT
clause.fields
- The fields to select, as comma-delimited field names. Spaces are OK. Must not contain "*"
.java.lang.IllegalArgumentException
- if fields contains "*"
Copyright © 2007-2017. All Rights Reserved.