| 限定符和类型 | 类和说明 |
|---|---|
protected static class |
AbstractDAO.Syntax |
| 限定符和类型 | 字段和说明 |
|---|---|
protected Map<String,String> |
fieldMapping
字段映射
|
| 构造器和说明 |
|---|
AbstractDAO(DataSource dataSource) |
| 限定符和类型 | 方法和说明 |
|---|---|
protected void |
addNewColumn(Connection connection,
String tableName,
List<String> uniqueColumnList,
com.alibaba.fastjson.JSONArray sourceProperties,
com.alibaba.fastjson.JSONArray targetProperties) |
void |
autoBuildDatabase(String packageName) |
void |
autoBuildDatabase(String packageName,
java.util.function.Predicate predicate) |
void |
autoBuildDatabase(String packageName,
String regexPattern) |
void |
autoBuildDatabase(String packageName,
String[] excludePackageNames) |
long |
clear(Class _class)
清空表
|
void |
commit()
事务提交
|
long |
delete(Class _class,
long id)
根据id删除
|
long |
delete(Class _class,
String property,
Object value)
根据属性删除
|
void |
endTransaction()
结束事务
|
<T> T |
fetch(Class<T> _class,
long id)
根据id查询
|
<T> T |
fetch(Class<T> _class,
String property,
Object value)
根据属性查询
|
<T> List<T> |
fetchList(Class<T> _class,
String property,
Object value)
根据属性查询
|
protected com.alibaba.fastjson.JSONArray |
getDatabaseInfo(Connection connection) |
protected com.alibaba.fastjson.JSONArray |
getEntityInfo(String packageName,
java.util.function.Predicate<Class> predicate)
获取实体类信息同时过滤
|
protected abstract String |
getSyntax(AbstractDAO.Syntax syntax,
Object... values)
提取各个数据库产品的SQL差异部分的语法
|
protected abstract String |
getUniqueStatement(String tableName,
List<String> columns)
获取唯一约束SQL语句
|
protected com.alibaba.fastjson.JSONObject |
getValue(com.alibaba.fastjson.JSONArray array,
String propertyName,
String value) |
<T> Condition<T> |
query(Class<T> _class)
Property查询
|
void |
rollback()
事务回滚
|
void |
rollback(Savepoint savePoint)
事务回滚
|
long |
save(List instanceList)
保存实体
|
long |
save(Object instance)
保存实体
|
long |
save(Object[] instances)
保存实体
|
Savepoint |
setSavePoint(String name)
设置保存点
|
void |
startTransaction()
开启事务
|
public AbstractDAO(DataSource dataSource)
protected abstract String getSyntax(AbstractDAO.Syntax syntax, Object... values)
protected abstract String getUniqueStatement(String tableName, List<String> columns)
public <T> List<T> fetchList(Class<T> _class, String property, Object value)
DAOpublic void startTransaction()
startTransaction 在接口中 DAOpublic Savepoint setSavePoint(String name)
setSavePoint 在接口中 DAOpublic void endTransaction()
endTransaction 在接口中 DAOprotected com.alibaba.fastjson.JSONArray getEntityInfo(String packageName, java.util.function.Predicate<Class> predicate) throws IOException, ClassNotFoundException
protected com.alibaba.fastjson.JSONArray getDatabaseInfo(Connection connection) throws SQLException
SQLExceptionpublic void autoBuildDatabase(String packageName)
public void autoBuildDatabase(String packageName, java.util.function.Predicate predicate)
protected void addNewColumn(Connection connection, String tableName, List<String> uniqueColumnList, com.alibaba.fastjson.JSONArray sourceProperties, com.alibaba.fastjson.JSONArray targetProperties) throws SQLException
SQLExceptionCopyright © 2019. All rights reserved.