Spring的SimpleJdbcTemplate:
①SimpleJdbcTemplate内部包含了一个NamedParameterJdbcTemplate;所以NamedParameterJdbcTemplate能做的事情SimpleJdbcTemplate都能干,SimpleJdbcTemplate相对于NamedParameterJdbcTemplate主要增加了JDK5.0的泛型和可变长度参数支持。
②public <T> List<T> query(String sql, ParameterizedRowMapper<T> rm, Object... args)
③public <T> T queryForObject(String sql, ParameterizedRowMapper<T> rm, SqlParameterSource args)
④public <T> List<T> query(String sql, ParameterizedRowMapper<T> rm, SqlParameterSource args)
⑤getJdbcOperations返回的是JdbcOperations(实现JdbcTemplate)
①SimpleJdbcTemplate内部包含了一个NamedParameterJdbcTemplate;所以NamedParameterJdbcTemplate能做的事情SimpleJdbcTemplate都能干,SimpleJdbcTemplate相对于NamedParameterJdbcTemplate主要增加了JDK5.0的泛型和可变长度参数支持。
②public <T> List<T> query(String sql, ParameterizedRowMapper<T> rm, Object... args)
③public <T> T queryForObject(String sql, ParameterizedRowMapper<T> rm, SqlParameterSource args)
④public <T> List<T> query(String sql, ParameterizedRowMapper<T> rm, SqlParameterSource args)
⑤getJdbcOperations返回的是JdbcOperations(实现JdbcTemplate)
⑥getNamedParameterJdbcOperations返回的是NamedParameterJdbcOperations(实现是NamedParameterJdbcTemplate)
测试类如下:
package cn.itcast.jdbc.spring;
import java.util.List;
import org.junit.Test;
import org.springframework.jdbc.core.simple.ParameterizedBeanPropertyRowMapper;
import org.springframework.jdbc.core.simple.SimpleJdbcTemplate;
import cn.itcast.jdbc.JdbcUtils;
import cn.itcast.jdbc.domain.User;
/**
* 使用Spring中的SimpleJdbcTemplate,
* 这里只做简单的介绍,因为支持泛型,因此
* JDK版本要求在1.5或以上版本
*/
public class SimpleJdbcTemplateCases {
@Test
public void testFind() {
find("lisi");
}
static SimpleJdbcTemplate simple =
new SimpleJdbcTemplate(JdbcUtils.getDataSource());
/**
* 测试查询方法
* @param name
* @return
*/
static List<User> find(String name) {
String sql = "select id, name, money, birthday "
+ "from user where name=? and money > ?";
List<User> list = simple.query(sql,
ParameterizedBeanPropertyRowMapper.newInstance(User.class),
//下面两个参数是可变长参数
name, 100f);
//获取JdbcTemplate中的所有操作
//simple.getJdbcOperations()
//获取NamedParameterJdbcTemplate中的所有操作
//simple.getNamedParameterJdbcOperations()
return list;
}
}