Package | Description |
---|---|
cn.hutool.db |
Hutool-db是一个在JDBC基础上封装的数据库操作工具类,通过包装,使用ActiveRecord思想操作数据库。
|
cn.hutool.db.handler |
JDBC结果集(ResultSet)转换封装,通过实现RsHandler接口,将ResultSet转换为我们想要的数据类型
|
cn.hutool.db.sql |
SQL语句和Statement构建封装
|
Modifier and Type | Method and Description |
---|---|
<T> T |
AbstractDb.find(Collection<String> fields,
Entity where,
RsHandler<T> rsh)
查询
查询条件为多个key value对表示,默认key = value,如果使用其它条件可以使用:where.put("key", " > 1"),value也可以传Condition对象,key被忽略 |
<T> T |
SqlConnRunner.find(Connection conn,
Collection<String> fields,
Entity where,
RsHandler<T> rsh)
查询
此方法不会关闭Connection |
<T> T |
SqlConnRunner.find(Connection conn,
Entity where,
RsHandler<T> rsh,
String... fields)
查询,返回指定字段列表
此方法不会关闭Connection |
<T> T |
DialectRunner.find(Connection conn,
Query query,
RsHandler<T> rsh)
查询
此方法不会关闭Connection |
<T> T |
AbstractDb.find(Entity where,
RsHandler<T> rsh,
String... fields)
查询,返回所有字段
查询条件为多个key value对表示,默认key = value,如果使用其它条件可以使用:where.put("key", " > 1"),value也可以传Condition对象,key被忽略 |
<T> T |
AbstractDb.find(Query query,
RsHandler<T> rsh)
查询
Query为查询所需数据的一个实体类,此对象中可以定义返回字段、查询条件,查询的表、分页等信息 |
static <T> T |
StatementUtil.getGeneratedKeys(Statement statement,
RsHandler<T> rsHandler)
获取主键,并使用
RsHandler 处理后返回 |
<T> T |
DialectRunner.insert(Connection conn,
Entity record,
RsHandler<T> generatedKeysHandler)
插入数据
此方法不会关闭Connection |
<T> T |
AbstractDb.page(CharSequence sql,
Page page,
RsHandler<T> rsh,
Object... params)
分页查询
|
<T> T |
AbstractDb.page(Collection<String> fields,
Entity where,
int page,
int numPerPage,
RsHandler<T> rsh)
分页查询
查询条件为多个key value对表示,默认key = value,如果使用其它条件可以使用:where.put("key", " > 1"),value也可以传Condition对象,key被忽略 |
<T> T |
AbstractDb.page(Collection<String> fields,
Entity where,
Page page,
RsHandler<T> rsh)
分页查询
查询条件为多个key value对表示,默认key = value,如果使用其它条件可以使用:where.put("key", " > 1"),value也可以传Condition对象,key被忽略 |
<T> T |
SqlConnRunner.page(Connection conn,
Collection<String> fields,
Entity where,
int pageNumber,
int numPerPage,
RsHandler<T> rsh)
分页查询
此方法不会关闭Connection |
<T> T |
SqlConnRunner.page(Connection conn,
Collection<String> fields,
Entity where,
Page page,
RsHandler<T> handler)
分页查询
此方法不会关闭Connection |
<T> T |
DialectRunner.page(Connection conn,
Query query,
RsHandler<T> rsh)
分页查询
此方法不会关闭Connection |
<T> T |
DialectRunner.page(Connection conn,
SqlBuilder sqlBuilder,
Page page,
RsHandler<T> rsh)
分页查询
此方法不会关闭Connection |
<T> T |
AbstractDb.page(Entity where,
int page,
int numPerPage,
RsHandler<T> rsh)
分页查询
查询条件为多个key value对表示,默认key = value,如果使用其它条件可以使用:where.put("key", " > 1"),value也可以传Condition对象,key被忽略 |
<T> T |
AbstractDb.page(Entity where,
Page page,
RsHandler<T> rsh)
分页查询
查询条件为多个key value对表示,默认key = value,如果使用其它条件可以使用:where.put("key", " > 1"),value也可以传Condition对象,key被忽略 |
<T> T |
AbstractDb.page(SqlBuilder sql,
Page page,
RsHandler<T> rsh)
分页查询
|
<T> T |
AbstractDb.query(Func1<Connection,PreparedStatement> statementFunc,
RsHandler<T> rsh)
|
<T> T |
AbstractDb.query(String sql,
RsHandler<T> rsh,
Map<String,Object> paramMap)
支持占位符的查询,例如:select * from table where field1=:name1
|
<T> T |
AbstractDb.query(String sql,
RsHandler<T> rsh,
Object... params)
查询
|
Modifier and Type | Class and Description |
---|---|
class |
BeanHandler<E>
Bean对象处理器,只处理第一条数据
|
class |
BeanListHandler<E>
结果集处理类 ,处理出的结果为Bean列表
|
class |
EntityHandler
Entity对象处理器,只处理第一条数据
|
class |
EntityListHandler
结果集处理类 ,处理出的结果为Entity列表
|
class |
EntitySetHandler
结果集处理类 ,处理出的结果为Entity列表,结果不能重复(按照Entity对象去重)
|
class |
NumberHandler
处理为数字结果,当查询结果为单个数字时使用此处理器(例如select count(1))
|
class |
PageResultHandler
分页结果集处理类 ,处理出的结果为PageResult
|
class |
StringHandler
处理为字符串结果,当查询结果为单个字符串时使用此处理器
|
class |
ValueListHandler
结果集处理类 ,处理出的结果为List列表
|
Modifier and Type | Method and Description |
---|---|
static <T> T |
SqlExecutor.query(Connection conn,
Func1<Connection,PreparedStatement> statementFunc,
RsHandler<T> rsh)
|
static <T> T |
SqlExecutor.query(Connection conn,
SqlBuilder sqlBuilder,
RsHandler<T> rsh)
执行查询语句
此方法不会关闭Connection |
static <T> T |
SqlExecutor.query(Connection conn,
String sql,
RsHandler<T> rsh,
Map<String,Object> paramMap)
执行查询语句,例如:select * from table where field1=:name1
此方法不会关闭Connection |
static <T> T |
SqlExecutor.query(Connection conn,
String sql,
RsHandler<T> rsh,
Object... params)
执行查询语句
此方法不会关闭Connection |
static <T> T |
SqlExecutor.query(PreparedStatement ps,
RsHandler<T> rsh,
Object... params)
执行查询语句
此方法不会关闭PreparedStatement |
static <T> T |
SqlExecutor.queryAndClosePs(PreparedStatement ps,
RsHandler<T> rsh,
Object... params)
执行查询语句并关闭PreparedStatement
|
Copyright © 2024. All rights reserved.