如何使用Spring JDBCTemplate绑定元组列表?

时间:2014-04-26 01:34:17

标签: sql spring jdbc jdbctemplate

我有一些这样的问题:

List listOfIntegers = Arrays.asList(new Integer[] {1, 2, 3});
List objects = 
    namedParameterJdbcTemplate.query("select * from bla where id in ( :ids )",
            Collections.singletonMap("ids", listOfIntegers),
            myRowMapper);

这会将此SQL查询发送到数据库:

select * from bla where id in ( 1, 2, 3 )

现在我想将这种类型的查询发送到数据库:

select * from bla where (id,name) in ( (1,'foo'), (2,'bar'), (3,'foobar'))

我是否需要传递List< List< Object>>完成这个?它是否适用于Spring JDBCTemplate?

1 个答案:

答案 0 :(得分:11)

我调试了Spring代码并发现它希望元组作为Object []提供,因此要使用List,它应该是List< Object []&gt ;.