资源描述:
《从数据库得到结果集放到list集合中》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、一、业务阐述 在开发中查询的数据库结果集,既要连接数据库、执行数据库操作、关闭数据库,还要把结果集的记录人为的设置到自己封装的DAO中等一系列的重复代码。本文主要是想解决:用户只需要得到数据库连接,写sql语句,自己封装dao,其余的操作由封转的小框架解决这些重复的工作,用户得到的只是一个集合List。List里面的元素有集合Map其中key是数据库中的字段类型,value是字段类型对应的值这个函数DBUtil.executeQuery(con,sql)List还提供集合元素存放的是dao对象,一条数据库
2、记录对应一个dao对象,此函数是DBUtil.executeQuery(con,sql,Vehicle.class)以下提供源码的叙述 二、源码解说 测试类Main.java代码 1.package com.hewen.dao.manage; 2. 3.import java.sql.Connection; 4.import java.sql.PreparedStatement; 5.import java.sql.ResultSet; 6.import java.sql.SQLExcepti
3、on; 7.import java.util.List; 8. 9. 10.public class Main 11.{ 12. public static void main(String[] args) 13. { 14. Connection con; 15. try { 16. con = DBTest.getCon(); 17. } catch (SQLException e) { 18.
4、 e.printStackTrace(); 19. return; 20. } 21. PreparedStatement pst = null; 22. ResultSet rs = null; 23. String sql = "select * from t_vehicle t where t.vehicle_id<4"; 24. /** 25. * 该方法用到
5、的技术是通过结果集的列属性的性质得到,没有用到反射机制 26. * 这个测试用例也是把查询的结果集放到List集合 27. * 里面的元素是集合Map,key是数据库中的字段类型,value是 28. * 字段类型对应的值, 29. * 查询的结果如:[{KIND_ID=1, DEF_FLAG=null, CHANNELNO=1, SN=陆震,(822)22911,13771000789, 30. * BUYDAT
6、E=2010-02-26, DELETETIME=null, STAMP=2010-02-26, REGDATE=null, ISDELETED=0, 31. * VEHICLE_ID=2, NUMBER_PLATE=苏B10001, VEHICLESTATE=待命状态(对应现场返回), USEDATE=2010-02-26, 32. * INTERPHONENO=null, NUMBER_PLATE_TYPE_ID=4, TEL2=null, STYLE=null
7、, COLOR=null, 33. * INTERPHONEID=null, LASTMAINTAINTIME=null, INITDISTANCE=0, LAST_UPDATE_TIME=2010-02-26, 34. * REMARK=null, TEL=null, SUPERVISER=null}, 35. * {KIND_ID=3, DEF_FLAG=null, CHANNELNO=1, SN=陆震, 36. * (
8、822)22911,13771000789, BUYDATE=2010-02-26, DELETETIME=null, STAMP=2010-02-26, 37. * REGDATE=null, ISDELETED=0, VEHICLE_ID=3, NUMBER_PLATE=苏B90003, 38. * VEHICLESTATE=待命状态(对应现场返回), USEDATE=2010-