学科分类
目录
Java Web

MapHandler和MapListHandler

MapHandler和MapListHandler类是将结果集数据存成Map映射。接下来创建类ResultSetTest6,演示MapHandler的使用方法,具体如例1所示:

例1 ResultSetTest6.java

 1  package cn.itcast.jdbc.example.dao;

 2  import java.sql.SQLException;

 3  import java.util.Map;

 4  import org.apache.commons.dbutils.handlers.MapHandler;

 5  public class ResultSetTest6 {

 6    public static void testMapHandler() throws SQLException {

 7      BaseDao basedao = new BaseDao();

 8      String sql = "select * from user where id=?";

 9      Map map = (Map) basedao.query(sql, new MapHandler(), 1);

 10     System.out.println(map);

 11   }

 12   public static void main(String[] args) throws SQLException {

 13     testMapHandler();

 14   }

 15 }

运行类ResultSetTest6,输出结果如图1所示。

图1 运行结果

由输出结果可以看出,MapHandler成功的将结果集数据存成Map映射,Map中的“键”为数据库的字段,而“值”为对应字段的数据。接下来在类ResultSetTest6中再写一个方法testMapListHandler(),具体代码如例2所示。

例2 ResultSetTest6.java

 1  package cn.itcast.jdbc.example.dao;

 2  import java.sql.SQLException;

 3  import java.util.List;

 4  import java.util.Map;

 5  import org.apache.commons.dbutils.handlers.MapHandler;

 6  import org.apache.commons.dbutils.handlers.MapListHandler;

 7  public class ResultSetTest6 {

 8    public static void testMapHandler() throws SQLException {

 9      BaseDao basedao = new BaseDao();

 10     String sql = "select * from user where id=?";

 11     Map map = (Map) basedao.query(sql, new MapHandler(), 1);

 12     System.out.println(map);

 13   }

 14  

 15    public static void testMapListHandler() throws SQLException {

 16       BaseDao basedao = new BaseDao();

 17       String sql = "select * from user ";

 18       List list = (List) basedao.query(sql,new MapListHandler());

 19         System.out.println(list);

 20     }

 21  

 22   public static void main(String[] args) throws SQLException {

 23     //testMapHandler();

 24     testMapListHandler();//调用新添加的方法

 25   }

 26 }

运行ResultSetTest6类,输出结果如图2所示。

图2 运行结果

由输出结果可以看出,MapListHandler类成功的将每一行结果集存成一个Map,并将所有Map存成list。

点击此处
隐藏目录