6

查看DBUtils API 文档,我看不出是否可以像使用 BeanListHandlerList<String>查询 a 一样查询 a 。List<MyBean>

我可以创建一个包装字符串并使用 BeanListHandler 的 Bean,也可以返回 aList<Object[]>并以这种方式取出我的字符串。

但是有没有更直接的方法可以让 DBUtils 传回List<String>从 varchar 表列生成一堆字符串值的查询?

4

1 回答 1

15

尝试 a ColumnListHandler,并告诉它要使用查询中的哪一列。您可以传入要提取的列索引或列名。就像是:

List<String> strings = runner.query("SELECT my_col FROM my_table",
                                    new ColumnListHandler<String>(1));
                                    // gets first column

如果所选列是字符串类型,它在内部使用ResultSet#getObjectwhich 返回 a String,因此请确保您没有选择数字或日期类型或其他内容(如果是,请在选择查询中将其转换或以其他方式转换为 char 类型) .

于 2013-03-01T17:27:18.867 回答