se.unlogic.standardutils.dao
Class AnnotatedDAO<T>
java.lang.Object
se.unlogic.standardutils.dao.AnnotatedDAO<T>
public class AnnotatedDAO<T>
- extends Object
Field Summary |
protected ArrayList<Field> |
autoAddRelations
|
protected ArrayList<Field> |
autoGetRelations
|
protected ArrayList<Field> |
autoUpdateRelations
|
protected Class<T> |
beanClass
|
protected List<BeanStringPopulator<?>> |
beanStringPopulators
|
protected String |
checkIfExistsSQL
|
protected ArrayList<ColumnKeyCollector<T>> |
columnKeyCollectors
|
protected HashMap<Field,Column<T,?>> |
columnMap
|
protected TreeMap<OrderBy,Column<T,?>> |
columnOrderMap
|
protected DataSource |
dataSource
|
protected String |
defaultSortingCriteria
|
protected String |
deleteByFieldSQL
|
protected String |
deleteSQL
|
protected String |
getSQL
|
protected String |
insertSQL
|
protected HashMap<Field,ManyToManyRelation<T,?>> |
manyToManyRelations
|
protected HashMap<Field,ManyToOneRelation<T,?,?>> |
manyToOneRelationKeys
|
protected HashMap<Field,ManyToOneRelation<T,?,?>> |
manyToOneRelations
|
protected HashMap<Field,OneToManyRelation<T,?>> |
oneToManyRelations
|
protected AnnotatedResultSetPopulator<T> |
populator
|
protected List<QueryParameterPopulator<?>> |
queryParameterPopulators
|
protected ArrayList<Column<T,?>> |
simpleColumns
|
protected ArrayList<Column<T,?>> |
simpleKeys
|
protected String |
tableName
|
protected String |
updateSQL
|
Constructor Summary |
AnnotatedDAO(DataSource dataSource,
Class<T> beanClass,
AnnotatedDAOFactory daoFactory)
|
AnnotatedDAO(DataSource dataSource,
Class<T> beanClass,
AnnotatedDAOFactory daoFactory,
AnnotatedResultSetPopulator<T> populator,
List<? extends QueryParameterPopulator<?>> queryParameterPopulators,
List<? extends BeanStringPopulator<?>> typePopulators)
|
AnnotatedDAO(DataSource dataSource,
Class<T> beanClass,
AnnotatedDAOFactory daoFactory,
AnnotatedResultSetPopulator<T> populator,
QueryParameterPopulator<?>... queryParameterPopulators)
|
AnnotatedDAO(DataSource dataSource,
Class<T> beanClass,
AnnotatedDAOFactory daoFactory,
List<? extends QueryParameterPopulator<?>> queryParameterPopulators,
List<? extends BeanStringPopulator<?>> typePopulators)
|
Method Summary |
void |
add(T bean)
|
void |
add(T bean,
Connection connection,
RelationQuery relationQuery)
|
void |
add(T bean,
RelationQuery relationQuery)
|
void |
add(T bean,
TransactionHandler transactionHandler,
RelationQuery relationQuery)
|
void |
addAll(Collection<T> beans,
Connection connection,
RelationQuery relationQuery)
|
void |
addAll(Collection<T> beans,
RelationQuery relationQuery)
|
void |
addAll(List<T> beans,
TransactionHandler transactionHandler,
RelationQuery relationQuery)
|
void |
addOrUpdate(T bean,
Connection connection,
RelationQuery relationQuery)
|
void |
addOrUpdate(T bean,
RelationQuery relationQuery)
|
void |
addOrUpdateAll(Collection<T> beans,
Connection connection,
RelationQuery relationQuery)
|
void |
addOrUpdateAll(Collection<T> beans,
TransactionHandler transactionHandler,
RelationQuery relationQuery)
|
boolean |
beanExists(T bean)
|
boolean |
beanExists(T bean,
Connection connection)
|
boolean |
beanExists(T bean,
TransactionHandler transactionHandler)
|
TransactionHandler |
createTransaction()
|
Integer |
delete(HighLevelQuery<T> highLevelQuery)
|
Integer |
delete(HighLevelQuery<T> highLevelQuery,
Connection connection)
|
Integer |
delete(HighLevelQuery<T> highLevelQuery,
TransactionHandler transactionHandler)
|
void |
delete(List<T> beans)
|
void |
delete(List<T> beans,
Connection connection)
|
void |
delete(List<T> beans,
TransactionHandler transactionHandler)
|
void |
delete(T bean)
|
void |
delete(T bean,
Connection connection)
|
void |
delete(T bean,
TransactionHandler transactionHandler)
|
boolean |
deleteWhereNotIn(List<T> beans,
Connection connection,
Field excludedField,
QueryParameter<T,?>... queryParameters)
|
boolean |
deleteWhereNotIn(List<T> beans,
TransactionHandler transactionHandler,
Field excludedField,
QueryParameter<T,?>... queryParameters)
|
protected void |
generateCheckIfExistsSQL()
|
protected void |
generateDeleteByFieldSQL()
|
protected void |
generateDeleteSQL()
|
protected void |
generateGetSQL()
|
protected void |
generateInsertSQL()
|
protected void |
generateUpdateSQL()
|
T |
get(HighLevelQuery<T> highLevelQuery)
|
T |
get(HighLevelQuery<T> highLevelQuery,
Connection connection)
|
T |
get(HighLevelQuery<T> highLevelQuery,
TransactionHandler transactionHandler)
|
T |
get(LowLevelQuery<T> lowLevelQuery)
|
T |
get(LowLevelQuery<T> lowLevelQuery,
Connection connection)
|
T |
get(LowLevelQuery<T> lowLevelQuery,
TransactionHandler transactionHandler)
|
List<T> |
getAll()
|
List<T> |
getAll(HighLevelQuery<T> highLevelQuery)
|
List<T> |
getAll(HighLevelQuery<T> highLevelQuery,
Connection connection)
|
List<T> |
getAll(HighLevelQuery<T> highLevelQuery,
TransactionHandler transactionHandler)
|
List<T> |
getAll(LowLevelQuery<T> lowLevelQuery)
|
List<T> |
getAll(LowLevelQuery<T> lowLevelQuery,
Connection connection)
|
List<T> |
getAll(LowLevelQuery<T> lowLevelQuery,
TransactionHandler transactionHandler)
|
protected List<T> |
getAll(String sql,
CustomQueryParameter<?> queryParameter,
Connection connection,
RelationQuery relationQuery)
|
Class<T> |
getBeanClass()
|
boolean |
getBoolean(HighLevelQuery<T> highLevelQuery)
|
boolean |
getBoolean(HighLevelQuery<T> highLevelQuery,
Connection connection)
|
boolean |
getBoolean(HighLevelQuery<T> highLevelQuery,
TransactionHandler transactionHandler)
|
boolean |
getBoolean(LowLevelQuery<T> lowLevelQuery)
|
boolean |
getBoolean(LowLevelQuery<T> lowLevelQuery,
Connection connection)
|
boolean |
getBoolean(LowLevelQuery<T> lowLevelQuery,
TransactionHandler transactionHandler)
|
Integer |
getCount(HighLevelQuery<T> highLevelQuery)
|
Integer |
getCount(HighLevelQuery<T> highLevelQuery,
Connection connection)
|
Integer |
getCount(HighLevelQuery<T> highLevelQuery,
TransactionHandler transactionHandler)
|
DataSource |
getDataSource()
|
OrderByCriteria<T> |
getOrderByCriteria(Field field,
Order order)
|
OrderByCriteria<T> |
getOrderByCriteria(String fieldName,
Order order)
|
|
getParamFactory(Field field,
Class<ParamType> paramClass)
|
|
getParamFactory(String fieldName,
Class<ParamType> paramClass)
|
protected BeanResultSetPopulator<T> |
getPopulator(Connection connection,
LowLevelQuery<T> query)
|
protected BeanResultSetPopulator<T> |
getPopulator(Connection connection,
RelationQuery relationQuery)
|
|
getQueryParameterPopulator(Class<QPT> type)
|
String |
getTableName()
|
boolean |
hasKeysSet(T bean)
|
boolean |
isNewBean(T bean,
Connection connection)
|
protected void |
populateRelation(T bean,
Connection connection,
RelationQuery relationQuery,
Field relation)
|
protected void |
populateRelations(T bean,
Connection connection,
RelationQuery relationQuery)
|
void |
setQueryParameters(PreparedStatementQuery query,
HighLevelQuery<T> highLevelQuery,
int startIndex)
|
void |
update(List<T> beans,
Connection connection,
RelationQuery relationQuery)
|
void |
update(List<T> beans,
RelationQuery relationQuery)
|
void |
update(List<T> beans,
TransactionHandler transactionHandler,
RelationQuery relationQuery)
|
void |
update(LowLevelQuery<T> lowLevelQuery)
|
void |
update(LowLevelQuery<T> lowLevelQuery,
Connection connection)
|
void |
update(LowLevelQuery<T> lowLevelQuery,
TransactionHandler transactionHandler)
|
void |
update(T bean)
|
Integer |
update(T bean,
Connection connection,
RelationQuery relationQuery)
|
void |
update(T bean,
RelationQuery relationQuery)
|
void |
update(T bean,
TransactionHandler transactionHandler,
RelationQuery relationQuery)
|
Methods inherited from class java.lang.Object |
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait |
populator
protected final AnnotatedResultSetPopulator<T> populator
dataSource
protected final DataSource dataSource
beanClass
protected final Class<T> beanClass
queryParameterPopulators
protected final List<QueryParameterPopulator<?>> queryParameterPopulators
beanStringPopulators
protected final List<BeanStringPopulator<?>> beanStringPopulators
simpleKeys
protected final ArrayList<Column<T,?>> simpleKeys
simpleColumns
protected final ArrayList<Column<T,?>> simpleColumns
columnMap
protected final HashMap<Field,Column<T,?>> columnMap
columnKeyCollectors
protected final ArrayList<ColumnKeyCollector<T>> columnKeyCollectors
manyToOneRelations
protected final HashMap<Field,ManyToOneRelation<T,?,?>> manyToOneRelations
manyToOneRelationKeys
protected final HashMap<Field,ManyToOneRelation<T,?,?>> manyToOneRelationKeys
oneToManyRelations
protected final HashMap<Field,OneToManyRelation<T,?>> oneToManyRelations
manyToManyRelations
protected final HashMap<Field,ManyToManyRelation<T,?>> manyToManyRelations
columnOrderMap
protected final TreeMap<OrderBy,Column<T,?>> columnOrderMap
autoAddRelations
protected final ArrayList<Field> autoAddRelations
autoGetRelations
protected final ArrayList<Field> autoGetRelations
autoUpdateRelations
protected final ArrayList<Field> autoUpdateRelations
tableName
protected String tableName
insertSQL
protected String insertSQL
updateSQL
protected String updateSQL
deleteSQL
protected String deleteSQL
checkIfExistsSQL
protected String checkIfExistsSQL
deleteByFieldSQL
protected String deleteByFieldSQL
getSQL
protected String getSQL
defaultSortingCriteria
protected String defaultSortingCriteria
AnnotatedDAO
public AnnotatedDAO(DataSource dataSource,
Class<T> beanClass,
AnnotatedDAOFactory daoFactory)
AnnotatedDAO
public AnnotatedDAO(DataSource dataSource,
Class<T> beanClass,
AnnotatedDAOFactory daoFactory,
AnnotatedResultSetPopulator<T> populator,
QueryParameterPopulator<?>... queryParameterPopulators)
AnnotatedDAO
public AnnotatedDAO(DataSource dataSource,
Class<T> beanClass,
AnnotatedDAOFactory daoFactory,
List<? extends QueryParameterPopulator<?>> queryParameterPopulators,
List<? extends BeanStringPopulator<?>> typePopulators)
AnnotatedDAO
public AnnotatedDAO(DataSource dataSource,
Class<T> beanClass,
AnnotatedDAOFactory daoFactory,
AnnotatedResultSetPopulator<T> populator,
List<? extends QueryParameterPopulator<?>> queryParameterPopulators,
List<? extends BeanStringPopulator<?>> typePopulators)
getDataSource
public DataSource getDataSource()
getQueryParameterPopulator
public <QPT> QueryParameterPopulator<QPT> getQueryParameterPopulator(Class<QPT> type)
generateInsertSQL
protected void generateInsertSQL()
generateUpdateSQL
protected void generateUpdateSQL()
generateCheckIfExistsSQL
protected void generateCheckIfExistsSQL()
generateDeleteSQL
protected void generateDeleteSQL()
generateDeleteByFieldSQL
protected void generateDeleteByFieldSQL()
generateGetSQL
protected void generateGetSQL()
createTransaction
public TransactionHandler createTransaction()
throws SQLException
- Throws:
SQLException
add
public void add(T bean)
throws SQLException
- Throws:
SQLException
add
public void add(T bean,
RelationQuery relationQuery)
throws SQLException
- Throws:
SQLException
addAll
public void addAll(Collection<T> beans,
RelationQuery relationQuery)
throws SQLException
- Throws:
SQLException
add
public void add(T bean,
TransactionHandler transactionHandler,
RelationQuery relationQuery)
throws SQLException
- Throws:
SQLException
addAll
public void addAll(List<T> beans,
TransactionHandler transactionHandler,
RelationQuery relationQuery)
throws SQLException
- Throws:
SQLException
addAll
public void addAll(Collection<T> beans,
Connection connection,
RelationQuery relationQuery)
throws SQLException
- Throws:
SQLException
add
public void add(T bean,
Connection connection,
RelationQuery relationQuery)
throws SQLException
- Throws:
SQLException
addOrUpdateAll
public void addOrUpdateAll(Collection<T> beans,
TransactionHandler transactionHandler,
RelationQuery relationQuery)
throws SQLException
- Throws:
SQLException
addOrUpdateAll
public void addOrUpdateAll(Collection<T> beans,
Connection connection,
RelationQuery relationQuery)
throws SQLException
- Throws:
SQLException
addOrUpdate
public void addOrUpdate(T bean,
RelationQuery relationQuery)
throws SQLException
- Throws:
SQLException
addOrUpdate
public void addOrUpdate(T bean,
Connection connection,
RelationQuery relationQuery)
throws SQLException
- Throws:
SQLException
isNewBean
public boolean isNewBean(T bean,
Connection connection)
throws SQLException
- Throws:
SQLException
hasKeysSet
public boolean hasKeysSet(T bean)
throws SQLException
- Throws:
SQLException
beanExists
public boolean beanExists(T bean)
throws SQLException
- Throws:
SQLException
beanExists
public boolean beanExists(T bean,
TransactionHandler transactionHandler)
throws SQLException
- Throws:
SQLException
beanExists
public boolean beanExists(T bean,
Connection connection)
throws SQLException
- Throws:
SQLException
update
public void update(T bean)
throws SQLException
- Throws:
SQLException
update
public void update(T bean,
RelationQuery relationQuery)
throws SQLException
- Throws:
SQLException
update
public void update(T bean,
TransactionHandler transactionHandler,
RelationQuery relationQuery)
throws SQLException
- Throws:
SQLException
update
public Integer update(T bean,
Connection connection,
RelationQuery relationQuery)
throws SQLException
- Throws:
SQLException
update
public void update(List<T> beans,
RelationQuery relationQuery)
throws SQLException
- Throws:
SQLException
update
public void update(List<T> beans,
TransactionHandler transactionHandler,
RelationQuery relationQuery)
throws SQLException
- Throws:
SQLException
update
public void update(List<T> beans,
Connection connection,
RelationQuery relationQuery)
throws SQLException
- Throws:
SQLException
update
public void update(LowLevelQuery<T> lowLevelQuery)
throws SQLException
- Throws:
SQLException
update
public void update(LowLevelQuery<T> lowLevelQuery,
TransactionHandler transactionHandler)
throws SQLException
- Throws:
SQLException
update
public void update(LowLevelQuery<T> lowLevelQuery,
Connection connection)
throws SQLException
- Throws:
SQLException
get
public T get(LowLevelQuery<T> lowLevelQuery)
throws SQLException
- Throws:
SQLException
get
public T get(LowLevelQuery<T> lowLevelQuery,
TransactionHandler transactionHandler)
throws SQLException
- Throws:
SQLException
get
public T get(LowLevelQuery<T> lowLevelQuery,
Connection connection)
throws SQLException
- Throws:
SQLException
getBoolean
public boolean getBoolean(LowLevelQuery<T> lowLevelQuery)
throws SQLException
- Throws:
SQLException
getBoolean
public boolean getBoolean(LowLevelQuery<T> lowLevelQuery,
TransactionHandler transactionHandler)
throws SQLException
- Throws:
SQLException
getBoolean
public boolean getBoolean(LowLevelQuery<T> lowLevelQuery,
Connection connection)
throws SQLException
- Throws:
SQLException
get
public T get(HighLevelQuery<T> highLevelQuery)
throws SQLException
- Throws:
SQLException
get
public T get(HighLevelQuery<T> highLevelQuery,
TransactionHandler transactionHandler)
throws SQLException
- Throws:
SQLException
get
public T get(HighLevelQuery<T> highLevelQuery,
Connection connection)
throws SQLException
- Throws:
SQLException
getBoolean
public boolean getBoolean(HighLevelQuery<T> highLevelQuery)
throws SQLException
- Throws:
SQLException
getBoolean
public boolean getBoolean(HighLevelQuery<T> highLevelQuery,
TransactionHandler transactionHandler)
throws SQLException
- Throws:
SQLException
getBoolean
public boolean getBoolean(HighLevelQuery<T> highLevelQuery,
Connection connection)
throws SQLException
- Throws:
SQLException
getPopulator
protected BeanResultSetPopulator<T> getPopulator(Connection connection,
LowLevelQuery<T> query)
getPopulator
protected BeanResultSetPopulator<T> getPopulator(Connection connection,
RelationQuery relationQuery)
populateRelations
protected void populateRelations(T bean,
Connection connection,
RelationQuery relationQuery)
throws SQLException
- Throws:
SQLException
populateRelation
protected void populateRelation(T bean,
Connection connection,
RelationQuery relationQuery,
Field relation)
throws SQLException
- Throws:
SQLException
getAll
public List<T> getAll(LowLevelQuery<T> lowLevelQuery)
throws SQLException
- Throws:
SQLException
getAll
public List<T> getAll(LowLevelQuery<T> lowLevelQuery,
TransactionHandler transactionHandler)
throws SQLException
- Throws:
SQLException
getAll
public List<T> getAll(LowLevelQuery<T> lowLevelQuery,
Connection connection)
throws SQLException
- Throws:
SQLException
getAll
protected List<T> getAll(String sql,
CustomQueryParameter<?> queryParameter,
Connection connection,
RelationQuery relationQuery)
throws SQLException
- Throws:
SQLException
getAll
public List<T> getAll(HighLevelQuery<T> highLevelQuery)
throws SQLException
- Throws:
SQLException
getAll
public List<T> getAll(HighLevelQuery<T> highLevelQuery,
TransactionHandler transactionHandler)
throws SQLException
- Throws:
SQLException
getAll
public List<T> getAll(HighLevelQuery<T> highLevelQuery,
Connection connection)
throws SQLException
- Throws:
SQLException
getAll
public List<T> getAll()
throws SQLException
- Throws:
SQLException
delete
public void delete(T bean)
throws SQLException
- Throws:
SQLException
delete
public void delete(T bean,
TransactionHandler transactionHandler)
throws SQLException
- Throws:
SQLException
delete
public void delete(T bean,
Connection connection)
throws SQLException
- Throws:
SQLException
delete
public void delete(List<T> beans)
throws SQLException
- Throws:
SQLException
delete
public void delete(List<T> beans,
TransactionHandler transactionHandler)
throws SQLException
- Throws:
SQLException
delete
public void delete(List<T> beans,
Connection connection)
throws SQLException
- Throws:
SQLException
delete
public Integer delete(HighLevelQuery<T> highLevelQuery)
throws SQLException
- Throws:
SQLException
delete
public Integer delete(HighLevelQuery<T> highLevelQuery,
TransactionHandler transactionHandler)
throws SQLException
- Throws:
SQLException
delete
public Integer delete(HighLevelQuery<T> highLevelQuery,
Connection connection)
throws SQLException
- Throws:
SQLException
deleteWhereNotIn
public boolean deleteWhereNotIn(List<T> beans,
TransactionHandler transactionHandler,
Field excludedField,
QueryParameter<T,?>... queryParameters)
throws SQLException
- Throws:
SQLException
deleteWhereNotIn
public boolean deleteWhereNotIn(List<T> beans,
Connection connection,
Field excludedField,
QueryParameter<T,?>... queryParameters)
throws SQLException
- Throws:
SQLException
getCount
public Integer getCount(HighLevelQuery<T> highLevelQuery)
throws SQLException
- Throws:
SQLException
getCount
public Integer getCount(HighLevelQuery<T> highLevelQuery,
TransactionHandler transactionHandler)
throws SQLException
- Throws:
SQLException
getCount
public Integer getCount(HighLevelQuery<T> highLevelQuery,
Connection connection)
throws SQLException
- Throws:
SQLException
getParamFactory
public <ParamType> QueryParameterFactory<T,ParamType> getParamFactory(Field field,
Class<ParamType> paramClass)
getParamFactory
public <ParamType> QueryParameterFactory<T,ParamType> getParamFactory(String fieldName,
Class<ParamType> paramClass)
getOrderByCriteria
public OrderByCriteria<T> getOrderByCriteria(Field field,
Order order)
getOrderByCriteria
public OrderByCriteria<T> getOrderByCriteria(String fieldName,
Order order)
getTableName
public String getTableName()
setQueryParameters
public void setQueryParameters(PreparedStatementQuery query,
HighLevelQuery<T> highLevelQuery,
int startIndex)
throws SQLException
- Throws:
SQLException
getBeanClass
public Class<T> getBeanClass()
Copyright © 2011. All Rights Reserved.