SimpleJdbcTemplate类也是基于JdbcTemplate类,但利用Java5+的可变参数列表和自动装箱和拆箱从而获取更简洁的代码。
SimpleJdbcTemplate主要提供两类方法:query及queryForXXX方法、update及batchUpdate方法。
首先让我们看个例子吧:
1)SimpleJdbcTemplate初始化:可以使用DataSource、JdbcTemplate或NamedParameterJdbcTemplate对象作为构造器参数初始化;
2)update(insertSql, 10, "name5"):采用Java5+可变参数列表从而代替new Object[]{10, "name5"}方式;
3)query(selectSql, mapper, 10, "name5"):使用Java5+可变参数列表及RowMapper回调并利用泛型特性来指定返回值类型(List<UserModel>)。
SimpleJdbcTemplate类还支持命名参数特性,如queryForList(String sql, SqlParameterSource args)和queryForList(String sql, Map<String, ?> args) ,类似于NamedParameterJdbcTemplate中使用,在此就不介绍了。
注:SimpleJdbcTemplate还提供类似于ParameterizedRowMapper 用于泛型特性的支持,ParameterizedRowMapper是RowMapper的子类,但从Spring 3.0由于允许环境需要Java5+,因此不再需要ParameterizedRowMapper ,而可以直接使用RowMapper;
query(String sql, ParameterizedRowMapper<T> rm, SqlParameterSource args)
query(String sql, RowMapper<T> rm, Object... args) //直接使用该语句
SimpleJdbcTemplate还提供如下方法用于获取JdbcTemplate和NamedParameterJdbcTemplate:
1)获取JdbcTemplate对象方法:JdbcOperations是JdbcTemplate的接口
JdbcOperations getJdbcOperations()
2)获取NamedParameterJdbcTemplate对象方法:NamedParameterJdbcOperations是NamedParameterJdbcTemplate的接口
NamedParameterJdbcOperations getNamedParameterJdbcOperations()
更多关系Spring的信息
Spring 论坛 http://www.itchm.com/forum-59-1.html