public abstract class BaseDaoImpl<T extends Serializable,PK extends Serializable> extends Object
| 限定符和类型 | 字段和说明 |
|---|---|
protected Map<String,String> |
filterField |
protected org.springframework.jdbc.core.JdbcTemplate |
jdbcTemplate |
protected static org.slf4j.Logger |
logger |
| 构造器和说明 |
|---|
BaseDaoImpl() |
| 限定符和类型 | 方法和说明 |
|---|---|
void |
batchUpdateObject(Collection<String> fields,
T object,
Map<String,Object> properties) |
void |
batchUpdateObject(String[] fields,
T object,
Map<String,Object> properties) |
String |
buildDefaultFieldFilterSql() |
String |
buildFieldFilterSql(String alias,
boolean useDefaultFilter)
每个dao都需要重载这个函数已获得自定义的查询条件,否则listObjects、pageQuery就等价与listObjectsByProperties
|
void |
deleteObject(T o) |
void |
deleteObjectById(Object id) |
void |
deleteObjectForce(T o) |
void |
deleteObjectForceById(Object id) |
void |
deleteObjectsByProperties(Map<String,Object> filterMap) |
void |
deleteObjectsForceByProperties(Map<String,Object> filterMap) |
String |
encapsulateFilterToSql(String filterQuery) |
T |
fetchObjectLazyColumn(T o,
String columnName) |
T |
fetchObjectLazyColumns(T o) |
T |
fetchObjectReference(T o,
String columnName) |
T |
fetchObjectReferences(T o) |
protected Connection |
getConnection()
Get a JDBC Connection, either from the current transaction or a new one.
|
DataSource |
getDataSource() |
String |
getExtendFilterQuerySql() |
abstract Map<String,String> |
getFilterField() |
static Map<String,org.apache.commons.lang3.tuple.Pair<String,String>> |
getFilterFieldWithPretreatment(Map<String,String> fieldMap) |
String |
getFilterQuerySql() |
org.springframework.jdbc.core.JdbcTemplate |
getJdbcTemplate() |
T |
getObjectById(Object id) |
T |
getObjectByProperties(Map<String,Object> properties) |
T |
getObjectCascadeById(Object id) |
T |
getObjectCascadeShallowById(Object id) |
T |
getObjectIncludeLazyById(Object id) |
Class<?> |
getPkClass() |
Class<?> |
getPoClass() |
List<T> |
listObjects()
查询所有数据
|
List<T> |
listObjects(Map<String,Object> filterMap)
根据设定的条件查询数据对象
|
com.alibaba.fastjson.JSONArray |
listObjectsAsJson(Map<String,Object> filterMap,
com.centit.support.database.utils.PageDesc pageDesc) |
List<T> |
listObjectsByFilter(String whereSql,
Map<String,Object> namedParams)
根据条件查询对象
|
List<T> |
listObjectsByFilter(String whereSql,
Map<String,Object> namedParams,
com.centit.support.database.utils.PageDesc pageDesc)
已过时。
|
List<T> |
listObjectsByFilter(String whereSql,
Object[] params)
根据条件查询对象
|
List<T> |
listObjectsByFilter(String whereSql,
Object[] params,
com.centit.support.database.utils.PageDesc pageDesc)
已过时。
|
com.alibaba.fastjson.JSONArray |
listObjectsByFilterAsJson(String whereSql,
Map<String,Object> namedParams,
com.centit.support.database.utils.PageDesc pageDesc) |
com.alibaba.fastjson.JSONArray |
listObjectsByFilterAsJson(String whereSql,
Object[] params,
com.centit.support.database.utils.PageDesc pageDesc) |
List<T> |
listObjectsByProperties(Map<String,Object> filterMap) |
List<T> |
listObjectsByProperties(Map<String,Object> filterMap,
com.centit.support.database.utils.PageDesc pageDesc) |
List<T> |
listObjectsByProperty(String propertyName,
Object value) |
List<T> |
listObjectsBySql(String querySql,
Map<String,Object> namedParams) |
void |
mergeObject(T o) |
int |
pageCount(Map<String,Object> filterMap)
这个函数仅仅是为了兼容mybatis版本中的查询
|
List<T> |
pageQuery(Map<String,Object> filterMap)
这个函数仅仅是为了兼容mybatis版本中的查询
|
protected void |
releaseConnection(Connection con)
Close the given JDBC Connection, created via this DAO's DataSource,
if it isn't bound to the thread.
|
void |
saveNewObject(T o) |
Integer |
saveObjectReference(T o,
String columnName) |
Integer |
saveObjectReferences(T o) |
void |
setDataSource(DataSource dataSource)
Set the JDBC DataSource to obtain connections from.
|
static String |
translatePropertyNameToColumnName(com.centit.support.database.orm.TableMapInfo mapInfo,
String sql,
String alias) |
void |
updateObject(Collection<String> fields,
T object) |
void |
updateObject(String[] fields,
T object) |
void |
updateObject(T o) |
protected static org.slf4j.Logger logger
protected org.springframework.jdbc.core.JdbcTemplate jdbcTemplate
public void setDataSource(DataSource dataSource)
dataSource - 数据源public final org.springframework.jdbc.core.JdbcTemplate getJdbcTemplate()
public final DataSource getDataSource()
protected final Connection getConnection() throws org.springframework.jdbc.CannotGetJdbcConnectionException
org.springframework.jdbc.CannotGetJdbcConnectionException - if the attempt to get a Connection failedDataSourceUtils.getConnection(javax.sql.DataSource)protected final void releaseConnection(Connection con)
con - Connection to closeDataSourceUtils.releaseConnection(java.sql.Connection, javax.sql.DataSource)public final Class<?> getPoClass()
public final Class<?> getPkClass()
public String getExtendFilterQuerySql()
public static Map<String,org.apache.commons.lang3.tuple.Pair<String,String>> getFilterFieldWithPretreatment(Map<String,String> fieldMap)
public static String translatePropertyNameToColumnName(com.centit.support.database.orm.TableMapInfo mapInfo, String sql, String alias)
public String buildFieldFilterSql(String alias, boolean useDefaultFilter)
alias - 数据库表别名useDefaultFilter - 使用默认过滤器public String buildDefaultFieldFilterSql()
public final String getFilterQuerySql()
public void saveNewObject(T o)
public void deleteObjectForce(T o)
public void deleteObjectForceById(Object id)
public void deleteObjectsForceByProperties(Map<String,Object> filterMap)
public void deleteObject(T o)
public void deleteObjectById(Object id)
public void updateObject(T o)
public void updateObject(Collection<String> fields, T object) throws com.centit.support.database.utils.PersistenceException
com.centit.support.database.utils.PersistenceExceptionpublic void batchUpdateObject(Collection<String> fields, T object, Map<String,Object> properties)
public void updateObject(String[] fields, T object) throws com.centit.support.database.utils.PersistenceException
com.centit.support.database.utils.PersistenceExceptionpublic void batchUpdateObject(String[] fields, T object, Map<String,Object> properties)
public void mergeObject(T o)
public List<T> listObjectsByProperties(Map<String,Object> filterMap, com.centit.support.database.utils.PageDesc pageDesc)
public int pageCount(Map<String,Object> filterMap)
filterMap - 过滤条件public List<T> pageQuery(Map<String,Object> filterMap)
filterMap - 过滤条件public List<T> listObjects(Map<String,Object> filterMap)
filterMap - 过滤条件public List<T> listObjectsByFilter(String whereSql, Object[] params)
whereSql - 只有 where 部分, 不能有from部分 这个式hibernate的区别params - 参数public List<T> listObjectsByFilter(String whereSql, Map<String,Object> namedParams)
whereSql - 只有 where 部分, 不能有from部分 这个式hibernate的区别namedParams - 命名参数@Deprecated public List<T> listObjectsByFilter(String whereSql, Object[] params, com.centit.support.database.utils.PageDesc pageDesc)
whereSql - 查询po 所以只有套写 where 以后部分params - 查询参数pageDesc - 分页信息@Deprecated public List<T> listObjectsByFilter(String whereSql, Map<String,Object> namedParams, com.centit.support.database.utils.PageDesc pageDesc)
whereSql - 查询po 所以只有套写 where 以后部分namedParams - 查询参数pageDesc - 分页信息public com.alibaba.fastjson.JSONArray listObjectsAsJson(Map<String,Object> filterMap, com.centit.support.database.utils.PageDesc pageDesc)
public com.alibaba.fastjson.JSONArray listObjectsByFilterAsJson(String whereSql, Map<String,Object> namedParams, com.centit.support.database.utils.PageDesc pageDesc)
whereSql - 查询po 所以只有套写 where 以后部分namedParams - 查询参数pageDesc - 分页信息Copyright © 2017 江苏南大先腾信息产业股份有限公司. All rights reserved.