public class SQLManager extends Object
| 构造器和说明 |
|---|
SQLManager(DBStyle dbStyle,
ConnectionSource ds)
创建一个beetlsql需要的sqlmanager
|
SQLManager(DBStyle dbStyle,
SQLLoader sqlLoader,
ConnectionSource ds) |
SQLManager(DBStyle dbStyle,
SQLLoader sqlLoader,
ConnectionSource ds,
NameConversion nc) |
SQLManager(DBStyle dbStyle,
SQLLoader sqlLoader,
ConnectionSource ds,
NameConversion nc,
Interceptor[] inters) |
SQLManager(DBStyle dbStyle,
SQLLoader sqlLoader,
ConnectionSource ds,
NameConversion nc,
Interceptor[] inters,
String defaultSchema) |
SQLManager(DBStyle dbStyle,
SQLLoader sqlLoader,
ConnectionSource ds,
NameConversion nc,
Interceptor[] inters,
String defaultSchema,
Properties ps) |
SQLManager(DBStyle dbStyle,
SQLLoader sqlLoader,
ConnectionSource ds,
NameConversion nc,
Interceptor[] inters,
String defaultSchema,
Properties ps,
String name) |
| 限定符和类型 | 方法和说明 |
|---|---|
void |
addIdAutonGen(String name,
IDAutoGen alorithm)
设置一种id算法用于注解AssignId("xxx"),这样,对于应用赋值主键,交给beetlsql来处理了
|
void |
addVirtualTable(String realTable,
String virtualTable)
为不存在的表设置一个数据库真正的表,以用于获取metadata,用于数据库分库分表
|
<T> List<T> |
all(Class<T> clazz)
btsql自动生成查询语句,查询clazz代表的表的所有数据。
|
<T> List<T> |
all(Class<T> clazz,
long start,
long size)
btsql自动生成查询语句,查询clazz代表的表的所有数据。
|
<T> List<T> |
all(Class<T> clazz,
RowMapper<T> mapper)
查询所有记录
|
<T> List<T> |
all(Class<T> clazz,
RowMapper<T> mapper,
long start,
int end)
查询所有记录
|
long |
allCount(Class<?> clazz)
查询记录数
|
protected void |
assignAutoId(Object bean,
Object id) |
BigDecimal |
bigDecimalValue(String id,
Map<String,Object> paras)
将查询结果返回成BigDecimal类型
|
BigDecimal |
bigDecimalValue(String id,
Object paras)
将查询结果返回成BigDecimal类型
|
int |
deleteById(Class<?> clazz,
Object pkValue)
delete from user where 1=1 and id= #id#
根据Id删除数据:支持联合主键
|
int |
deleteObject(Object obj)
删除对象, 通过对象的主键
|
<T> List<T> |
execute(SQLReady p,
Class<T> clazz)
直接执行sql语句查询,sql语句已经是准备好的,采用preparedstatment执行
|
<T> PageQuery<T> |
execute(SQLReady p,
Class<T> clazz,
PageQuery<T> pageQuery) |
<T> List<T> |
execute(String sqlTemplate,
Class<T> clazz,
Map paras)
直接执行sql查询语句,sql是模板
|
<T> List<T> |
execute(String sqlTemplate,
Class<T> clazz,
Map paras,
long start,
long size)
直接执行sql模版语句,sql是模板
|
<T> List<T> |
execute(String sqlTemplate,
Class<T> clazz,
Object paras)
直接执行语句,sql是模板
|
<T> List<T> |
execute(String sqlTemplate,
Class<T> clazz,
Object paras,
long start,
long size)
直接执行sql模板查询,并获取指定范围的结果集
|
int[] |
executeBatchUpdate(SQLBatchReady batch) |
<T> T |
executeOnConnection(OnConnection<T> onConnection)
自己用Connection执行jdbc,通常用于存储过程调用,或者需要自己完全控制的jdbc
|
<T> PageQuery<T> |
executePageQuery(String sqlTemplate,
Class<T> clazz,
PageQuery<T> pageQuery)
sql 模板分页查询,记得使用page函数
|
int |
executeUpdate(SQLReady p)
直接执行sql语句,用于删除或者更新,sql语句已经是准备好的,采用preparedstatment执行
|
int |
executeUpdate(String sqlTemplate,
Map paras)
直接更新sql,sql是模板
|
int |
executeUpdate(String sqlTemplate,
Object paras)
直接执行sql更新,sql是模板
|
boolean |
exist(Class<?> clazz,
Object pk)
是否有此对象
|
void |
genALL(String pkg,
GenConfig config,
GenFilter filter)
生成数据库的所有entity,dao,还有md文件,
|
void |
genBuiltInSqlToConsole(Class cls)
生成内置的sql,插入,更新,主键查找,删除语句
|
void |
genPojoCode(String table,
String pkg)
生成pojo类,默认路径是当前工程src目录,或者是src/main/java 下
|
void |
genPojoCode(String table,
String pkg,
GenConfig config)
同上,但路径自动根据项目当前目录推测,是src目录下,或者src/main/java 下
|
void |
genPojoCode(String table,
String pkg,
String srcPath,
GenConfig config)
根据表名生成对应的pojo类
|
void |
genPojoCodeToConsole(String table)
仅仅打印pojo类到控制台,使用默认的包,建议使用genPojoCodeToConsole(String table,String pkg)
|
void |
genPojoCodeToConsole(String table,
GenConfig config)
仅仅打印pojo类到控制台
|
void |
genPojoCodeToConsole(String table,
String pkg)
仅仅打印pojo类到控制台
|
void |
genSQLFile(String table,
GenConfig config)
将sql模板文件输出到src下,如果采用的是ClasspathLoader,则使用ClasspathLoader的配置,否则,
生成到src的sql代码里
|
void |
genSQLFile(String table,
String alias,
GenConfig config) |
void |
genSQLTemplateToConsole(String table)
生成sql语句片段,包含了条件查询,列名列表,更新,插入等语句
|
void |
genSQLTemplateToConsole(String table,
String alias)
生成md到控制台,使用别名
|
protected Object |
getAssignIdByIdAutonGen(String name,
String param,
String table)
根据某种算法自动计算id
|
Beetl |
getBeetl()
得到beetl引擎
|
DBStyle |
getDbStyle()
得到当前sqlmanager的数据库类型
|
BeanProcessor |
getDefaultBeanProcessors()
得到默认的jdbc到bean的处理类
|
String |
getDefaultSchema() |
ConnectionSource |
getDs() |
ClassLoader |
getEntityLoader() |
Interceptor[] |
getInters()
得到所有的Interceptor
|
<T> T |
getMapper(Class<T> mapperInterface)
通过mapper接口生成dao代理
|
MapperBuilder |
getMapperBuilder()
得到MapperBuilder,默认是DefaultMapperBuilder
|
MapperConfig |
getMapperConfig() |
MetadataManager |
getMetaDataManager()
得到MetaDataManager,用来获取数据库元数据,如表,列,主键等信息
|
NameConversion |
getNc()
获取 NameConversion
|
SQLScript |
getPageSqlScript(String selectId)
获取为分页语句
|
Map<String,BeanProcessor> |
getProcessors()
获取特殊的BeanPorcessor
|
SQLScript |
getScript(Class<?> cls,
ConstantEnum constantEnum)
得到增删改查模板
|
SQLScript |
getScript(String id)
得到指定sqlId的sqlscript对象
|
SQLIdNameConversion |
getSQLIdNameConversion() |
SQLLoader |
getSqlLoader() |
static SQLManager |
getSQLManagerByName(String name)
每个sqlManager都有个名称,如果未指定,默认是dbStyle 返回的名称,即数据库名
|
String |
getSQLManagerName() |
void |
getSQLMetadata(String id,
Object paras) |
SQLResult |
getSQLResult(SQLSource source,
Map inputParas)
内部使用,
|
SQLResult |
getSQLResult(String id,
Map<String,Object> paras)
不执行数据库操作,仅仅得到一个sql模板执行后的实际得sql和相应的参数
|
SQLResult |
getSQLResult(String id,
Map<String,Object> paras,
org.beetl.core.Context ctx) |
SQLResult |
getSQLResult(String id,
Object paras)
不执行数据库操作,仅仅得到一个sql模板执行后的实际得sql和相应的参数
|
int |
insert(Class<?> clazz,
Object paras)
插入对象通用的方法,如果数据表有自增主键,需要获取到自增主键,参考使用 insert(Object paras,boolean
autoAssignKey),或者使用 带有KeyHolder的方法
|
int |
insert(Class<?> clazz,
Object paras,
KeyHolder holder)
插入,并获取自增主键的值
|
int |
insert(Class clazz,
Object paras,
boolean autoDbAssignKey)
对于有自增主键的表,插入一行记录
|
int |
insert(Object paras)
通用插入操作
|
int |
insert(Object paras,
boolean autoDbAssignKey)
插入实体
|
int |
insert(String sqlId,
Class<?> clazz,
Map paras,
KeyHolder holder)
插入操作,数据库自增主键放到keyHolder里
|
int |
insert(String sqlId,
Map paras,
KeyHolder holder,
String keyName)
插入,并获取自增主键值,因为此接口并未指定实体对象,因此需要keyName来指明数据库主键列
|
int |
insert(String sqlId,
Object paras,
KeyHolder holder)
插入,并获取主键,主键将通过paras所代表的表名来获取
|
int |
insert(String sqlId,
Object paras,
KeyHolder holder,
String keyName)
插入,并获取主键
|
int[] |
insertBatch(Class clazz,
List<?> list)
批量插入
|
int[] |
insertBatch(Class clazz,
List<?> list,
boolean autoDbAssignKey) |
int |
insertTemplate(Class<?> clazz,
Object paras,
KeyHolder holder)
模板插入,仅仅插入非空属性,并获取自增主键
|
int |
insertTemplate(Class clazz,
Object paras,
boolean autoDbAssignKey)
模板插入,非空值插入到数据库,并且获取到自增主键的值
|
int |
insertTemplate(Object paras)
通用模板插入
|
int |
insertTemplate(Object paras,
boolean autoDbAssignKey)
模板插入,并根据autoAssignKey 自动获取自增主键值
|
Integer |
intValue(String id,
Map<String,Object> paras)
将查询结果返回成Integer类型
|
Integer |
intValue(String id,
Object paras)
将查询结果返回成Integer类型
|
boolean |
isOffsetStartZero() |
boolean |
isProductMode()
是否是生产模式:生产模式MetadataManager ,不查看sql文件变化,默认是false
|
boolean |
isRefreshReady() |
<T> LambdaQuery<T> |
lambdaQuery(Class<T> clazz) |
<T> T |
lock(Class<T> clazz,
Object pk)
一个行级锁实现,类似select * from xx where id = ?
|
Long |
longValue(String id,
Map<String,Object> paras)
将查询结果返回成Long类型
|
Long |
longValue(String id,
Object paras)
将查询结果返回成Long类型
|
static SQLManagerBuilder |
newBuilder(ConnectionSource ds)
使用这个创建更加的简洁, 并且用户不需要理解更多的 构造函数
|
static SQLManagerBuilder |
newBuilder(String driver,
String url,
String userName,
String password)
快速上手的简洁构建器
|
<T> PageQuery<T> |
pageQuery(String sqlId,
Class<T> clazz,
PageQuery<T> query) |
<T> PageQuery<T> |
pageQuery(String sqlId,
Class<T> clazz,
PageQuery query,
RowMapper<T> mapper)
翻页查询,假设有sqlId和sqlId$count 俩个sql存在,beetlsql会通过
这俩个sql来查询总数以及翻页操作,如果没有sqlId$count,则假设sqlId 包含了page函数或者标签 ,如
queryUser
===
select #page("a.
|
<T> Query<T> |
query(Class<T> clazz) |
void |
refresh()
清空缓存,用于动态增加修改表情况下可以
|
<T> List<T> |
select(String sqlId,
Class<T> clazz)
根据sqlId查询目标对象
|
<T> List<T> |
select(String sqlId,
Class<T> clazz,
Map<String,Object> paras)
通过sqlId进行查询,查询结果映射到clazz上
|
<T> List<T> |
select(String sqlId,
Class<T> clazz,
Map<String,Object> paras,
long start,
long size)
翻页查询
|
<T> List<T> |
select(String sqlId,
Class<T> clazz,
Map<String,Object> paras,
RowMapper<T> mapper)
通过sqlId进行查询,查询结果映射到clazz上,mapper类可以定制映射
|
<T> List<T> |
select(String sqlId,
Class<T> clazz,
Map<String,Object> paras,
RowMapper<T> mapper,
long start,
long size)
翻页查询
|
<T> List<T> |
select(String sqlId,
Class<T> clazz,
Object paras)
通过sqlId进行查询,查询结果映射到clazz上,输入条件是个Bean,
Bean的属性可以被sql语句引用,如bean中有name属性,即方法getName,则sql语句可以包含 name属性,如select *
from xxx where name = #name#
|
<T> List<T> |
select(String sqlId,
Class<T> clazz,
Object paras,
long start,
long size)
翻页查询
|
<T> List<T> |
select(String sqlId,
Class<T> clazz,
Object paras,
RowMapper<T> mapper)
通过sqlId进行查询:查询结果映射到clazz上,输入条件是个Bean,
Bean的属性可以被sql语句引用,如bean中有name属性,即方法getName,则sql语句可以包含name属性, 如select *
from xxx where name = #name#。
|
<T> List<T> |
select(String sqlId,
Class<T> clazz,
Object paras,
RowMapper<T> mapper,
long start,
long size)
翻页查询
|
<T> T |
selectSingle(String sqlId,
Map<String,Object> paras,
Class<T> target)
返回查询的第一行数据,如果有未找到,返回null
|
<T> T |
selectSingle(String sqlId,
Object paras,
Class<T> target)
返回查询的第一行数据,如果有未找到,返回null
|
<T> T |
selectUnique(String id,
Map<String,Object> paras,
Class<T> target)
返回一行数据,如果有多行或者未找到,抛错
|
<T> T |
selectUnique(String id,
Object paras,
Class<T> target)
返回一行数据,如果有多行或者未找到,抛错
|
MapperConfig |
setBaseMapper(Class c) |
void |
setDefaultBeanProcessors(BeanProcessor defaultBeanProcessors)
设置默认的jdbc 到 bean的映射处理类,用户可以自己扩展处理最新的类型
|
void |
setDefaultSchema(String defaultSchema)
设置对应的数据库的schema,一般不需要调用,因为通过jdbc能自动获取
|
void |
setDs(ConnectionSource ds)
设置ConnectionSource,参考ConnectionSourceHelper
|
void |
setEntityLoader(ClassLoader entityLoader)
设置classloder,如果没有,pojo的初始化使用ContextClassLoader或者加载Beetlsql的classLoader
|
void |
setInters(Interceptor[] inters)
设置Interceptor
|
void |
setMapperBuilder(MapperBuilder mapperBuilder)
设置MapperBuilder,用来生成java的dao代理类,参考getMapper
|
void |
setNc(NameConversion nc)
设置NameConversion
|
void |
setProcessors(Map<String,BeanProcessor> processors)
为指定的sqlId提供一个处理类,可以既可以是一个sqlId,也可以是namespace部分,
所有属于namesapce的都会被此BeanProcessor 处理
|
void |
setSQLIdNameConversion(SQLIdNameConversion sqlIdNc)
设置sqlId到sql文件映射关系
|
void |
setSqlLoader(SQLLoader sqlLoader) |
<T> T |
single(Class<T> clazz,
Object pk) |
<T> List<T> |
template(Class<T> target,
Object paras,
long start,
long size) |
<T> List<T> |
template(Class<T> target,
Object paras,
long start,
long size,
String orderBy) |
<T> List<T> |
template(Class<T> target,
Object paras,
RowMapper mapper,
long start,
long size) |
<T> List<T> |
template(Class<T> target,
Object paras,
String orderBy) |
<T> List<T> |
template(T t) |
<T> List<T> |
template(T t,
long start,
long size) |
<T> List<T> |
template(T t,
RowMapper mapper) |
<T> List<T> |
template(T t,
RowMapper mapper,
long start,
long size) |
<T> long |
templateCount(Class<T> target,
Object paras) |
<T> long |
templateCount(T t)
查询总数
|
<T> T |
templateOne(T t) |
<T> T |
unique(Class<T> clazz,
Object pk)
根据主键查询 获取唯一记录,如果纪录不存在,将会抛出异常
|
<T> T |
unique(Class<T> clazz,
RowMapper<T> mapper,
Object pk)
根据主键查询,获取唯一记录,如果纪录不存在,将会抛出异常
|
int |
update(String sqlId)
执行sql更新(或者删除)操作
|
int |
update(String sqlId,
Map<String,Object> paras)
执行sql更新(或者删除语句)
|
int |
update(String sqlId,
Object obj)
执行sql更新(或者删除)操作
|
int |
updateAll(Class<?> clazz,
Object param)
更新指定表
|
int[] |
updateBatch(String sqlId,
List<?> list)
对pojo批量更新执行sql更新语句,list包含的对象是作为参数,所有属性参与更新
|
int[] |
updateBatch(String sqlId,
Map<String,Object>[] maps)
批量更新
|
int[] |
updateBatchTemplateById(Class clz,
List<?> list)
批量模板更新方式,list包含的对象是作为参数,非空属性参与更新
|
int |
updateById(Object obj)
更新一个对象
|
int[] |
updateByIdBatch(List<?> list)
批量更新
|
int |
updateTemplateById(Class c,
Map paras) |
int |
updateTemplateById(Class c,
Object obj)
按照模板更新
|
int |
updateTemplateById(Object obj)
为null的值不参与更新,如果想更新null值,请使用updateById
|
int |
upsert(Object obj)
先判断是否主键为空,如果为空,则插入,如果不为空,则从数据库
出一条,如果未取到,则插入一条,其他情况按照主键更新
|
protected int |
upsert(Object obj,
boolean template)
先判断是否主键为空,如果为空,则插入,如果不为空,则从数据库
取出一条,如果未取到,则插入一条,其他情况按照主键更新
|
int |
upsertByTemplate(Object obj)
先判断是否主键为空,如果为空,则插入,如果不为空,则从数据库
取出一条,如果未取到,则插入一条,其他情况按照主键更新
|
void |
useMaster(DBRunner f)
只使用master执行:
sqlManager.useMaster(new DBRunner(){
public void run(SQLManager sqlManager){
sqlManager.select .....
}
)
|
void |
useSlave(DBRunner f)
只使用Slave执行:
sqlManager.useSlave(new DBRunner(){
public void run(SQLManager sqlManager){
sqlManager.select .....
}
)
|
public SQLManager(DBStyle dbStyle, ConnectionSource ds)
dbStyle - ds - public SQLManager(DBStyle dbStyle, SQLLoader sqlLoader, ConnectionSource ds)
dbStyle - 数据个风格sqlLoader - sql加载ds - 数据库连接public SQLManager(DBStyle dbStyle, SQLLoader sqlLoader, ConnectionSource ds, NameConversion nc)
dbStyle - 数据个风格sqlLoader - sql加载ds - 数据库连接nc - 数据库名称与java名称转化规则public SQLManager(DBStyle dbStyle, SQLLoader sqlLoader, ConnectionSource ds, NameConversion nc, Interceptor[] inters)
dbStyle - sqlLoader - ds - nc - inters - public SQLManager(DBStyle dbStyle, SQLLoader sqlLoader, ConnectionSource ds, NameConversion nc, Interceptor[] inters, String defaultSchema)
dbStyle - sqlLoader - ds - nc - inters - defaultSchema - 数据库访问的schema,为null自动判断public SQLManager(DBStyle dbStyle, SQLLoader sqlLoader, ConnectionSource ds, NameConversion nc, Interceptor[] inters, String defaultSchema, Properties ps)
public SQLManager(DBStyle dbStyle, SQLLoader sqlLoader, ConnectionSource ds, NameConversion nc, Interceptor[] inters, String defaultSchema, Properties ps, String name)
dbStyle - sqlLoader - ds - nc - inters - defaultSchema - ps - 额外的beetl配置public static SQLManagerBuilder newBuilder(ConnectionSource ds)
ds - 数据源public static SQLManagerBuilder newBuilder(String driver, String url, String userName, String password)
driver - 驱动url - urluserName - userNamepassword - passwordpublic static SQLManager getSQLManagerByName(String name)
name - public <T> LambdaQuery<T> lambdaQuery(Class<T> clazz)
public boolean isOffsetStartZero()
public boolean isProductMode()
public SQLResult getSQLResult(String id, Map<String,Object> paras)
id - paras - public SQLResult getSQLResult(String id, Object paras)
id - paras - public SQLResult getSQLResult(SQLSource source, Map inputParas)
source - inputParas - public SQLResult getSQLResult(String id, Map<String,Object> paras, org.beetl.core.Context ctx)
public SQLScript getScript(Class<?> cls, ConstantEnum constantEnum)
cls - clzconstantEnum - ConstantEnumpublic <T> List<T> select(String sqlId, Class<T> clazz, Map<String,Object> paras)
sqlId - sql标记clazz - 需要映射的Pojo类,可以是实体类,也可以是一个Mapparas - 参数集合public <T> List<T> select(String sqlId, Class<T> clazz, Map<String,Object> paras, RowMapper<T> mapper)
sqlId - sql标记clazz - 需要映射的Pojo类,可以是实体类,也可以是一个Mapparas - 参数集合mapper - 自定义结果映射方式public <T> List<T> select(String sqlId, Class<T> clazz, Object paras)
sqlId - sql标记clazz - 需要映射的Pojo类paras - Beanpublic <T> List<T> select(String sqlId, Class<T> clazz)
sqlId - clazz - public <T> List<T> select(String sqlId, Class<T> clazz, Object paras, RowMapper<T> mapper)
sqlId - sql标记clazz - 需要映射的Pojo类paras - Beanmapper - 自定义结果映射方式public <T> List<T> select(String sqlId, Class<T> clazz, Object paras, long start, long size)
sqlId - sql标记clazz - 需要映射的Pojo类paras - Beanstart - 开始位置size - 查询条数public <T> List<T> select(String sqlId, Class<T> clazz, Object paras, RowMapper<T> mapper, long start, long size)
sqlId - sql标记clazz - 需要映射的Pojo类paras - Beanmapper - 自定义结果映射方式start - 开始位置size - 查询条数public <T> List<T> select(String sqlId, Class<T> clazz, Map<String,Object> paras, long start, long size)
sqlId - sql标记clazz - 需要映射的Pojo类paras - 条件集合start - 开始位置size - 查询条数public <T> List<T> select(String sqlId, Class<T> clazz, Map<String,Object> paras, RowMapper<T> mapper, long start, long size)
sqlId - sql标记clazz - 需要映射的Pojo类paras - 条件集合mapper - 自定义结果映射方式start - 开始位置size - 查询条数public <T> PageQuery<T> pageQuery(String sqlId, Class<T> clazz, PageQuery query, RowMapper<T> mapper)
queryUser
===
select #page("a.*,b.name")# from user a left join role b ....
sqlId - clazz - query - mapper - public <T> T unique(Class<T> clazz, Object pk)
clazz - pk - 主键public <T> T unique(Class<T> clazz, RowMapper<T> mapper, Object pk)
clazz - mapper - 自定义结果映射方式pk - 主键public <T> T lock(Class<T> clazz, Object pk)
clazz - pk - public <T> List<T> all(Class<T> clazz, long start, long size)
clazz - start - size - public long allCount(Class<?> clazz)
clazz - public <T> List<T> all(Class<T> clazz, RowMapper<T> mapper, long start, int end)
clazz - mapper - start - end - public <T> List<T> template(T t)
public <T> T templateOne(T t)
public <T> List<T> template(T t, long start, long size)
public <T> List<T> template(Class<T> target, Object paras, RowMapper mapper, long start, long size)
public <T> List<T> template(Class<T> target, Object paras, long start, long size, String orderBy)
public <T> long templateCount(T t)
t - public Long longValue(String id, Map<String,Object> paras)
id - paras - public Integer intValue(String id, Map<String,Object> paras)
id - paras - public BigDecimal bigDecimalValue(String id, Object paras)
id - paras - public BigDecimal bigDecimalValue(String id, Map<String,Object> paras)
id - paras - public <T> T selectSingle(String sqlId, Object paras, Class<T> target)
sqlId - paras - target - public <T> T selectSingle(String sqlId, Map<String,Object> paras, Class<T> target)
sqlId - paras - target - public <T> T selectUnique(String id, Object paras, Class<T> target)
id - paras - target - public <T> T selectUnique(String id, Map<String,Object> paras, Class<T> target)
id - paras - target - public int deleteById(Class<?> clazz, Object pkValue)
根据Id删除数据:支持联合主键
clazz - pkValue - public int deleteObject(Object obj)
obj - 对象,必须包含了主键,实际上根据主键来删除public int insert(Object paras)
paras - public int insert(Object paras, boolean autoDbAssignKey)
paras - autoDbAssignKey - 是否自动从数据库获取主键值, 自增或者序列public int insertTemplate(Object paras)
paras - public int insertTemplate(Object paras, boolean autoDbAssignKey)
paras - autoDbAssignKey - public int insert(Class clazz, Object paras, boolean autoDbAssignKey)
clazz - paras - autoDbAssignKey,是否获取自增主键 - public int insertTemplate(Class clazz, Object paras, boolean autoDbAssignKey)
clazz - paras - autoDbAssignKey - public int insert(Class<?> clazz, Object paras)
clazz - paras - public int insert(Class<?> clazz, Object paras, KeyHolder holder)
clazz - paras - holder - 自增或者序列主健放到holder对象里public int insertTemplate(Class<?> clazz, Object paras, KeyHolder holder)
clazz - paras - holder - public int insert(String sqlId, Object paras, KeyHolder holder, String keyName)
sqlId - paras - 参数holder - keyName - 主键列名称public int insert(String sqlId, Object paras, KeyHolder holder)
sqlId - paras - holder - public int insert(String sqlId, Class<?> clazz, Map paras, KeyHolder holder)
sqlId - clazz - paras - holder - public int insert(String sqlId, Map paras, KeyHolder holder, String keyName)
sqlId - paras - holder - keyName - 主键列名称public int upsert(Object obj)
obj - public int upsertByTemplate(Object obj)
obj - protected int upsert(Object obj, boolean template)
obj - 待更新/插入的实体对象template - public int updateById(Object obj)
obj - public int updateTemplateById(Object obj)
obj - public int updateTemplateById(Class c, Map paras)
c - c对应的表名paras - 参数,仅仅更新paras里包含的值,paras里必须带有主键的值作为更新条件public int[] updateByIdBatch(List<?> list)
list - ,包含pojo(不支持map)public int update(String sqlId)
sqlId - public int update(String sqlId, Map<String,Object> paras)
sqlId - paras - public int[] updateBatch(String sqlId, List<?> list)
sqlId - list - public int[] updateBatchTemplateById(Class clz, List<?> list)
clz - list - public int[] updateBatch(String sqlId, Map<String,Object>[] maps)
sqlId - maps - 参数放在map里public void useMaster(DBRunner f)
sqlManager.useMaster(new DBRunner(){
public void run(SQLManager sqlManager){
sqlManager.select .....
}
)
f - public void useSlave(DBRunner f)
sqlManager.useSlave(new DBRunner(){
public void run(SQLManager sqlManager){
sqlManager.select .....
}
)
f - public <T> List<T> execute(String sqlTemplate, Class<T> clazz, Object paras)
sqlTemplate - clazz - paras - public <T> List<T> execute(String sqlTemplate, Class<T> clazz, Map paras)
sqlTemplate - clazz - paras - public <T> List<T> execute(String sqlTemplate, Class<T> clazz, Map paras, long start, long size)
sqlTemplate - clazz - paras - start - size - public <T> List<T> execute(String sqlTemplate, Class<T> clazz, Object paras, long start, long size)
sqlTemplate - clazz - paras - start - size - public <T> PageQuery<T> executePageQuery(String sqlTemplate, Class<T> clazz, PageQuery<T> pageQuery)
sqlTemplate - select #page(*)# from user where name=#userName# ....clazz - pageQuery - public int executeUpdate(String sqlTemplate, Object paras)
sqlTemplate - paras - public int executeUpdate(String sqlTemplate, Map paras)
sqlTemplate - paras - public <T> List<T> execute(SQLReady p, Class<T> clazz)
clazz - p - public int executeUpdate(SQLReady p)
p - public int[] executeBatchUpdate(SQLBatchReady batch)
public <T> T executeOnConnection(OnConnection<T> onConnection)
onConnection - public void genPojoCode(String table, String pkg, String srcPath, GenConfig config) throws Exception
table - 表名pkg - 包名,如 com.testsrcPath: - 文件保存路径config - 配置生成的风格Exceptionpublic void genPojoCode(String table, String pkg, GenConfig config) throws Exception
table - pkg - config - Exceptionpublic void genPojoCode(String table, String pkg) throws Exception
table - pkg - Exceptionpublic void genPojoCodeToConsole(String table, String pkg) throws Exception
table - pkg - 包名Exceptionpublic void genPojoCodeToConsole(String table) throws Exception
table - Exceptionpublic void genPojoCodeToConsole(String table, GenConfig config) throws Exception
table - Exceptionpublic void genSQLFile(String table, GenConfig config) throws Exception
table - Exceptionpublic void genSQLFile(String table, String alias, GenConfig config) throws Exception
Exceptionpublic void genSQLTemplateToConsole(String table) throws Exception
table - Exceptionpublic void genSQLTemplateToConsole(String table, String alias) throws Exception
table - alias - Exceptionpublic void genALL(String pkg, GenConfig config, GenFilter filter) throws Exception
pkg - config - filter - 最好设置filter以避免覆盖已有代码Exceptionpublic void genBuiltInSqlToConsole(Class cls)
cls - public <T> T getMapper(Class<T> mapperInterface)
mapperInterface - public SQLLoader getSqlLoader()
public void setSqlLoader(SQLLoader sqlLoader)
public ConnectionSource getDs()
public void setDs(ConnectionSource ds)
ds - public NameConversion getNc()
public void setNc(NameConversion nc)
nc - public DBStyle getDbStyle()
public Beetl getBeetl()
public MetadataManager getMetaDataManager()
public String getDefaultSchema()
public void setDefaultSchema(String defaultSchema)
defaultSchema - public MapperBuilder getMapperBuilder()
public void setMapperBuilder(MapperBuilder mapperBuilder)
mapperBuilder - public Interceptor[] getInters()
public void setInters(Interceptor[] inters)
inters - public void addIdAutonGen(String name, IDAutoGen alorithm)
name - alorithm - protected Object getAssignIdByIdAutonGen(String name, String param, String table)
name - param - public Map<String,BeanProcessor> getProcessors()
public void setProcessors(Map<String,BeanProcessor> processors)
processors - public BeanProcessor getDefaultBeanProcessors()
public void setDefaultBeanProcessors(BeanProcessor defaultBeanProcessors)
defaultBeanProcessors - public void setSQLIdNameConversion(SQLIdNameConversion sqlIdNc)
sqlIdNc - public SQLIdNameConversion getSQLIdNameConversion()
public MapperConfig getMapperConfig()
public MapperConfig setBaseMapper(Class c)
c - 设置一个基接口, 也是推荐的编程方式, 这样可以与框架解耦public String getSQLManagerName()
public void refresh()
public boolean isRefreshReady()
public ClassLoader getEntityLoader()
public void setEntityLoader(ClassLoader entityLoader)
entityLoader - Copyright © 2019. All rights reserved.