DBUtils数据库连接池多表连接查询
DBUtils数据库连接池多表连接查询
MapListHandler的使用(具体使用方式查看官方文档http://commons.apache.org/proper/commons-dbutils/apidocs/index.html)
key——sql语句查询的字段
value——数据库中查询得到的结果
出现的问题描述
对于多表连接查询,如果使用BeanListHandler,则会出现空指针异常。
例如employee和department分类封装为Javabean。employee中声明一个department的对象。如下图所示:
解决方案
使用MapListHandle最终返回List<map<String,Object>>,使用迭代的方式通过查询字段取出value,首先根据Department类中的key从map中取出对应的value,并将其封装为Department对象。最终再封装为Employee对象,这样就解决了使用BeanListHandler出现空指针异常的现象。
具体实现代码如下图