ResultSetHandler接口
ResultSetHandler接口用于处理ResultSet结果集,它可以将结果集中的数据转为不同的形式。根据结果集中数据类型的不同,ResultSetHandler提供了不同的实现类,具体如下:
● AbstractKeyedHandler: 该类为抽象类,能够把结果集里面的数据转换为用Map存储。
● AbstractListHandler: 该类为抽象类,能够把结果集里面的数据转换为用List存储,抽象类。
● ArrayHandler:把结果集中的第一行数据转成对象数组。
● ArrayListHandler:把结果集中的每一行数据都转成一个对象数组,再将数组存放到List中。
● BaseResultSetHandler:把结果集转换成其他对象的扩展。
● BeanHandler:将结果集中的第一行数据封装到一个对应的JavaBean实例中。
● BeanListHandler:将结果集中的每一行数据都封装到一个对应的JavaBean实例中,存放到List里。
● BeanMapHandler:将结果集中的每一行数据都封装到一个对应的JavaBean实例中,然后再根据指定的key把每个JavaBean再存放到一个Map里。
● ColumnListHandler:将结果集中某一列的数据存放到List中。
● KeyedHandler:将结果集中的每一行数据都封装到一个Map里,然后再根据指定的key把每个Map再存放到一个Map里。
● MapHandler:将结果集中的第一行数据封装到一个Map里,key是列名,value就是对应的值。
● MapListHandler:将结果集中的每一行数据都封装到一个Map里,然后再存放到List中。
● ScalarHandler:将结果集中某一条记录的其中某一列的数据存储成Object对象。
另外,在ResultSetHandler接口中,提供了一个单独的方法handle (java.sql.ResultSet rs),如果上述实现类没有提供你想要的功能,可以通过自定义一个实现ResultSetHandler接口的类,然后通过重写handle()方法,实现结果集的处理。