“使用QueryRunner查询表中特殊值的操作”的版本间的差异
跳到导航
跳到搜索
Jihongchang(讨论 | 贡献) (建立内容为“https://www.bilibili.com/video/BV1eJ411c7rf/?p=53”的新页面) |
Jihongchang(讨论 | 贡献) |
||
第1行: | 第1行: | ||
https://www.bilibili.com/video/BV1eJ411c7rf/?p=53 | https://www.bilibili.com/video/BV1eJ411c7rf/?p=53 | ||
+ | |||
+ | === ScalarHandler === | ||
+ | |||
+ | ==== 示例1 ==== | ||
+ | <syntaxhighlight lang="java"> | ||
+ | /** | ||
+ | * ScalarHandler:是 ResultSetHandler 接口的实现类,对应查询结果中的单个值 | ||
+ | */ | ||
+ | @Test | ||
+ | public void testQueryObjectLong() { | ||
+ | Connection conn = null; | ||
+ | String sql = "select count(*) from customers"; | ||
+ | |||
+ | /* | ||
+ | AbstractKeyedHandler, AbstractListHandler, ArrayHandler, ArrayListHandler, BaseResultSetHandler, | ||
+ | BeanHandler, BeanListHandler, BeanMapHandler, ColumnListHandler, | ||
+ | KeyedHandler, MapHandler, MapListHandler, ScalarHandler | ||
+ | */ | ||
+ | ScalarHandler rsh = new ScalarHandler(); | ||
+ | Long count = null; | ||
+ | QueryRunner runner = new QueryRunner(); | ||
+ | |||
+ | try { | ||
+ | |||
+ | conn = JDBCUtils.getConnectionFromDruid(); | ||
+ | |||
+ | count = (Long) runner.query(conn, sql, rsh); | ||
+ | |||
+ | } catch (SQLException e) { | ||
+ | e.printStackTrace(); | ||
+ | } finally { | ||
+ | JDBCUtils.closeResource(conn, null); | ||
+ | } | ||
+ | |||
+ | System.out.println(count); | ||
+ | |||
+ | } | ||
+ | </syntaxhighlight><syntaxhighlight lang="console"> | ||
+ | 7 | ||
+ | </syntaxhighlight> | ||
+ | |||
+ | |||
+ | |||
+ | ==== 示例2 ==== | ||
+ | <syntaxhighlight lang="java"> | ||
+ | /** | ||
+ | * ScalarHandler:是 ResultSetHandler 接口的实现类,对应查询结果中的单个值 | ||
+ | */ | ||
+ | @Test | ||
+ | public void testQueryObjectDate() { | ||
+ | Connection conn = null; | ||
+ | String sql = "select max(birth) from customers"; | ||
+ | |||
+ | /* | ||
+ | AbstractKeyedHandler, AbstractListHandler, ArrayHandler, ArrayListHandler, BaseResultSetHandler, | ||
+ | BeanHandler, BeanListHandler, BeanMapHandler, ColumnListHandler, | ||
+ | KeyedHandler, MapHandler, MapListHandler, ScalarHandler | ||
+ | */ | ||
+ | ScalarHandler rsh = new ScalarHandler(); | ||
+ | Date d = null; | ||
+ | QueryRunner runner = new QueryRunner(); | ||
+ | |||
+ | try { | ||
+ | |||
+ | conn = JDBCUtils.getConnectionFromDruid(); | ||
+ | |||
+ | d = (Date) runner.query(conn, sql, rsh); | ||
+ | |||
+ | } catch (SQLException e) { | ||
+ | e.printStackTrace(); | ||
+ | } finally { | ||
+ | JDBCUtils.closeResource(conn, null); | ||
+ | } | ||
+ | |||
+ | System.out.println(d); | ||
+ | |||
+ | } | ||
+ | </syntaxhighlight><syntaxhighlight lang="console"> | ||
+ | 2023-01-09 | ||
+ | </syntaxhighlight> |
2023年1月14日 (六) 06:58的版本
https://www.bilibili.com/video/BV1eJ411c7rf/?p=53
ScalarHandler
示例1
/**
* ScalarHandler:是 ResultSetHandler 接口的实现类,对应查询结果中的单个值
*/
@Test
public void testQueryObjectLong() {
Connection conn = null;
String sql = "select count(*) from customers";
/*
AbstractKeyedHandler, AbstractListHandler, ArrayHandler, ArrayListHandler, BaseResultSetHandler,
BeanHandler, BeanListHandler, BeanMapHandler, ColumnListHandler,
KeyedHandler, MapHandler, MapListHandler, ScalarHandler
*/
ScalarHandler rsh = new ScalarHandler();
Long count = null;
QueryRunner runner = new QueryRunner();
try {
conn = JDBCUtils.getConnectionFromDruid();
count = (Long) runner.query(conn, sql, rsh);
} catch (SQLException e) {
e.printStackTrace();
} finally {
JDBCUtils.closeResource(conn, null);
}
System.out.println(count);
}
7
示例2
/**
* ScalarHandler:是 ResultSetHandler 接口的实现类,对应查询结果中的单个值
*/
@Test
public void testQueryObjectDate() {
Connection conn = null;
String sql = "select max(birth) from customers";
/*
AbstractKeyedHandler, AbstractListHandler, ArrayHandler, ArrayListHandler, BaseResultSetHandler,
BeanHandler, BeanListHandler, BeanMapHandler, ColumnListHandler,
KeyedHandler, MapHandler, MapListHandler, ScalarHandler
*/
ScalarHandler rsh = new ScalarHandler();
Date d = null;
QueryRunner runner = new QueryRunner();
try {
conn = JDBCUtils.getConnectionFromDruid();
d = (Date) runner.query(conn, sql, rsh);
} catch (SQLException e) {
e.printStackTrace();
} finally {
JDBCUtils.closeResource(conn, null);
}
System.out.println(d);
}
2023-01-09