QueryRunner類結果集處理的八種方法
阿新 • • 發佈:2020-10-05
在連線資料庫的時候(MySQL)時,會遇到的問題。
呼叫QueryRunner的方法是:
query(Connection con,String Sql,ResultSetHandler r,Object.params)
MapListHandler
將結果集每一行儲存到Map集合中,鍵:列名;值:資料
public static void mapListHandler()throws SQLException{ QueryRunner qr = new QueryRunner(); String sql = "select * from db"; Lsit<Map<String,Object>> list = qr.query(con,sql,new MapListHandler()); for(Map<String,Object> map:list){ System.out.print(key+'..'+map.get(key)); } System.out.prinln(); }
MapHandler
將結果集的第一行資料,封存到Map集合中
public static void mapHandler()throws SQLException{ QueryRunner qr = new QueryRunner(); String sql = "select * from db"; Map map = qr.query(con,sql,new MapHandler()); for(String key:map.keySet()){ System.out.print(key+'..'+map.get(key)); } System.out.prinln(); }
ScalarHandler
查詢後,只有一個結果
Public static void scalarHandler() throws SQLException(){
QueryRunner qr = new QueryRunner();
String sql = "select * from db";
long count = qr.query(con,sql,new ScalarHandler());
System.out.prinln(count);
}
ColumnListHandler
結果集,指定列的資料儲存到List集合中,
List每個列資料型別不同。
public static void columnListHandler()throws SQLException(){
QueryRunner qr = new QueryRunner();
String sql = "select * from db";
List<Object> list = qr.query(con,sql,new ColumnListHandler<Object>("name"));
for(Object obj:list){
System.out.println(obj);
}
System.out.prinln(obj);
}
BeanListHandler
結果集每一行資料,封裝JavaBean物件
多個JavaBean物件,儲存到List集合
public static void columnListHandler()throws SQLException(){
QueryRunner qr = new QueryRunner();
String sql = "select * from db";
List list = qr.query(con,sql,new BeanListHandler<Sort>(Sort.class));
for(Sort s:list){
System.out.println(s);
}
}
BeanHandler
將結果集的第一行資料,封裝成JavaBean物件
public static void beanHandler()throws SQLException{
QueryRunner qr = new QueryRunner();
String sql = "SELECT * FROM sort ";
Sort s = qr.query(con, sql, new BeanHandler<Sort>(Sort.class));
System.out.println(s);
}
ArrayListHandler
將結果集的每一行,封裝到物件陣列中
public static void arrayListHandler()throws SQLException{
QueryRunner qr = new QueryRunner();
String sql = "SELECT * FROM sort";
List<Object[]> result= qr.query(con, sql, new ArrayListHandler());
for( Object[] objs : result){
for(Object obj : objs){
System.out.print(obj+" ");
}
System.out.println();
}
}
ArrayHandler
將結果集的第一行儲存到物件陣列中 Object[]
public static void arrayHandler()throws SQLException{
QueryRunner qr = new QueryRunner();
String sql = "SELECT * FROM sort";
Object[] result = qr.query(con, sql, new ArrayHandler());
for(Object obj : result){
System.out.print(obj);
}
}
}