spring jdbc 的 jdbcTemplate.query(?)方法 和 queryForList(??)方法

2者都能返回满足结果的多行的结果集(List),它们的区别主要在什么地方?性能方面哪个比较好?... 2者都能返回满足结果的多行的结果集(List), 它们的区别主要在什么地方?性能方面哪个比较好? 展开
 我来答
archyly
推荐于2016-01-25 · TA获得超过1318个赞
知道小有建树答主
回答量:389
采纳率:50%
帮助的人:428万
展开全部

queryForList:返回的是map对象,map对象字段名为key。

query:主要是一些callback interface 的用法。

例如:

final User user = new User();
jdbcTemplate.query("SELECT * FROM USER WHERE user_id = ?",
                    new Object[] {id},
                    new RowCallbackHandler() {
                        public void processRow(ResultSet rs) throws SQLException {
                            user.setId(rs.getString("user_id"));
                            user.setName(rs.getString("name"));
                            user.setSex(rs.getString("sex").charAt(0));
                            user.setAge(rs.getInt("age"));
                        }
                    });

没有性能上的差别,适用场景不同。

更多追问追答
追问
这2个方法最后都能返回 List的集合,那什么场景下用什么方法呢?
这2个方法最后都能返回 List的集合,那什么场景下用什么方法呢?
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式