| 程序包 | 说明 |
|---|---|
| cn.hutool.db |
Hutool-db是一个在JDBC基础上封装的数据库操作工具类,通过包装,使用ActiveRecord思想操作数据库。
|
| cn.hutool.db.handler |
JDBC结果集(ResultSet)转换封装,通过实现RsHandler接口,将ResultSet转换为我们想要的数据类型
|
| cn.hutool.db.sql |
SQL语句和Statement构建封装
|
| 限定符和类型 | 方法和说明 |
|---|---|
<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 |
SqlConnRunner.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为查询所需数据的一个实体类,此对象中可以定义返回字段、查询条件,查询的表、分页等信息 |
<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> 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.query(String sql,
RsHandler<T> rsh,
Object... params)
查询
|
| 限定符和类型 | 类和说明 |
|---|---|
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
处理为字符串结果,当查询结果为单个字符串时使用此处理器
|
| 限定符和类型 | 方法和说明 |
|---|---|
static <T> T |
SqlExecutor.query(Connection conn,
String sql,
RsHandler<T> rsh,
Map<String,Object> paramMap)
执行查询语句
此方法不会关闭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 © 2019. All rights reserved.