Dbutils 多表联合查询不支持别名解决方法

Dbutils 非常好用,但是其: QueryRunner 对象的query(conn, sql, new MapListHandler(), params) 方法,不能支持别名。

例如 Emp表和salary表都有列id,如下:

emp表

+----+------+----------+
| id | name | password |
+----+------+----------+
|  1 | abc  | abc      |
|  2 | aaa  | aaa      |
|  3 | bbb  | bbb      |
+----+------+----------+

salary 表

+----+--------+
| id | salary |
+----+--------+
|  1 |   2000 |
|  2 |    300 |
|  3 |    300 |
+----+--------+


查询语句为:

String sql="select a.id as aid,name,password,b.id as bid,b.salary from emp a inner join salary b on a.id=b.id"


所得结果为null,null,null

如何才能够让Dbutils支持别名呢?

1. 新建java 项目:test ,    

2. 下载Dbutils 的Src 包,将commons-dbutils-1.4-src\commons-dbutils-1.4-src\src\main\java目录下的org文件夹拷贝到项目test的src 目录下

3.Dbutils 多表联合查询不支持别名解决方法_第1张图片

4.打成jar包

Dbutils 多表联合查询不支持别名解决方法_第2张图片


将Dbutils-jeremy.jar包代替原有的jar包,运行程序,得出正确结果



你可能感兴趣的:(java)