public class Recorder extends Object
Modifier and Type | Field and Description |
---|---|
Map<String,String> |
SQL_TEMPLATE_CACHE |
Constructor and Description |
---|
Recorder(JdbcOperate jdbcOperate)
构造函数
|
Recorder(JdbcOperate jdbcOperate,
boolean camelToUnderline)
构造函数
|
Modifier and Type | Method and Description |
---|---|
<T> String |
buildDeleteSqlTemplate(String tableName,
T obj,
Query query)
构造删除的 SQL
|
<T> String |
buildInsertSqlTemplate(String tableName,
T obj)
构造插入的 SQL
|
<T> String |
buildQueryField(T obj,
Query query) |
<T> String |
buildQuerySqlTemplate(String tableName,
T obj,
Query query)
构造查询的 SQL
|
static <R> R |
buildUpdateBaseObject(R data,
String... updateFilds)
根据需要更新的字段构造一个更新对象
|
<T> String |
buildUpdateSqlTemplate(String tableName,
T obj,
Query query)
构造更新的 SQL
|
<T,R> R |
customQuery(String tableName,
String dataSql,
String whereSql,
T obj,
Class<R> clazz)
自定义查询操作
|
<T> int |
delete(String tableName,
T obj)
删除操作
|
<T> int |
delete(String tableName,
T obj,
Query query)
删除操作
|
<T> int |
delete(T obj)
删除操作
|
<T> int |
delete(T obj,
Query query)
删除操作
|
String |
genMysqlPageSql(String sql,
Query query)
生成 Mysql 分页的 sql
|
String |
genOraclePageSql(String sql,
Query query)
生成Oracle 分页的 sql
|
String |
genPostgrePageSql(String sql,
Query query)
生成 Postage 分页的 sql
|
String |
genWhereSql(Object obj,
Query query)
生成 where 后面的 sql
|
static String |
getCacheKey(String type,
String mark,
Class clazz,
Query query) |
JdbcOperate |
getJdbcOperate() |
<T> String |
getSqlDatabase(T obj)
获取数据库名
|
String |
getSqlFieldName(JdbcOperate jdbcOperate,
Field field)
获取字段名
|
<T> String |
getSqlTableName(T obj)
获取表名
|
String |
getTableNameWithDataBase(Object obj)
获取带有数据库名的表名字符串
|
<T> int |
insert(String tableName,
T obj)
插入操作
|
<T> int |
insert(T obj)
插入操作
|
<T> List<T> |
query(String tableName,
T obj)
查询操作
|
<T> List<T> |
query(String tableName,
T obj,
Query query)
查询操作
|
<T> List<T> |
query(T obj)
查询操作
|
<T> List<T> |
query(T obj,
Query query)
查询操作
|
void |
setJdbcOperate(JdbcOperate jdbcOperate) |
<T> int |
update(String tableName,
T obj)
更新操作
更新对象中所有非 null 的属性, 但不包括主键
|
<T> int |
update(String tableName,
T obj,
Query query)
更新操作
如果 Query 中的 data.length == 0 则更新所有非 null 的属性
|
<T> int |
update(T obj)
更新操作
更新对象中所有非 null 的属性, 但不包括主键
|
<T> int |
update(T obj,
Query query)
更新操作
如果 Query 中的 data.length == 0, 更新对象中所有非 null 的属性, 但不包括主键
|
public Recorder(JdbcOperate jdbcOperate)
jdbcOperate
- DBAccess 数据库连接对象public Recorder(JdbcOperate jdbcOperate, boolean camelToUnderline)
jdbcOperate
- DBAccess 数据库连接对象camelToUnderline
- 是否将驼峰转换为下划线形式public JdbcOperate getJdbcOperate()
public void setJdbcOperate(JdbcOperate jdbcOperate)
public <T> List<T> query(String tableName, T obj, Query query)
T
- 范型类型tableName
- 指定的表名obj
- 数据 ORM 对象query
- 查询条件public <T> List<T> query(T obj, Query query)
T
- 范型类型obj
- 数据 ORM 对象query
- 查询条件public <T> List<T> query(String tableName, T obj)
T
- 范型类型tableName
- 指定的表名obj
- 数据 ORM 对象public <T> List<T> query(T obj)
T
- 范型类型obj
- 数据 ORM 对象public <T,R> R customQuery(String tableName, String dataSql, String whereSql, T obj, Class<R> clazz)
T
- 范型类型R
- 返回值的范型类型tableName
- 指定的表名dataSql
- select 和 from 之间的 sql 片段whereSql
- where 后的 sql 片段obj
- 数据 ORM 对象clazz
- 返回类型public <T> int update(String tableName, T obj, Query query)
T
- 范型类型tableName
- 指定的表名obj
- 数据 ORM 对象query
- 查询条件public <T> int update(T obj, Query query)
T
- 范型类型obj
- 数据 ORM 对象query
- 查询条件public <T> int update(String tableName, T obj)
T
- 范型类型tableName
- 指定的表名obj
- 数据 ORM 对象public <T> int update(T obj)
T
- 范型类型obj
- 数据 ORM 对象public <T> int delete(String tableName, T obj, Query query)
T
- 范型类型tableName
- 指定的表名obj
- 数据 ORM 对象query
- 查询条件public <T> int delete(T obj, Query query)
T
- 范型类型obj
- 数据 ORM 对象query
- 查询条件public <T> int delete(String tableName, T obj)
T
- 范型类型tableName
- 指定的表名obj
- 数据 ORM 对象public <T> int delete(T obj)
T
- 范型类型obj
- 数据 ORM 对象public <T> int insert(String tableName, T obj)
T
- 范型类型tableName
- 指定的表名obj
- 数据 ORM 对象public <T> int insert(T obj)
T
- 范型类型obj
- 数据 ORM 对象public <T> String buildQuerySqlTemplate(String tableName, T obj, Query query)
T
- 范型类型tableName
- 指定的表名obj
- 数据 ORM 对象query
- 查询条件public <T> String buildUpdateSqlTemplate(String tableName, T obj, Query query)
T
- 范型类型tableName
- 指定的表名obj
- 数据 ORM 对象query
- 查询条件public <T> String buildInsertSqlTemplate(String tableName, T obj)
T
- 范型类型tableName
- 指定的表名obj
- 数据 ORM 对象public <T> String buildDeleteSqlTemplate(String tableName, T obj, Query query)
T
- 范型类型tableName
- 指定的表名obj
- 数据 ORM 对象query
- 查询对象public String genWhereSql(Object obj, Query query)
obj
- 数据对象query
- 查询对象public String genMysqlPageSql(String sql, Query query)
sql
- sql 字符串query
- 查询对象public String genPostgrePageSql(String sql, Query query)
sql
- sql 字符串query
- 查询对象public String genOraclePageSql(String sql, Query query)
sql
- sql 字符串query
- 查询对象public <T> String getSqlDatabase(T obj)
T
- 范型类型obj
- 数据 ORM 对象public <T> String getSqlTableName(T obj)
T
- 范型类型obj
- 数据 ORM 对象public String getTableNameWithDataBase(Object obj)
obj
- 对象public String getSqlFieldName(JdbcOperate jdbcOperate, Field field)
jdbcOperate
- JdbcOperate 对象field
- 字段对象public static <R> R buildUpdateBaseObject(R data, String... updateFilds) throws ReflectiveOperationException
R
- 对象data
- 对象updateFilds
- 更新的字段ReflectiveOperationException
- 反射异常Copyright © 2020 Voovan. All rights reserved.