JDBC之使用SimpleJdbcTemplate和泛型技术简化代码
2017-07-30 19:05
393 查看
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)
⑥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;
}
}
①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;
}
}
相关文章推荐
- 深入体验JavaWeb开发内幕——使用元数据简化JDBC代码
- 使用工具类来简化代码JDBCUtils
- 使用元数据简化jdbc代码---查询操作(用到反射)
- 使用工具类来简化代码JDBCUtils
- JAVA使用JDBC技术操作SqlServer数据库实例代码
- 使用泛型程序简化代码设计
- 使用反射技术实现对JDBC dao的简化
- 使用元数据简化jdbc代码
- 使用元数据简化jdbc代码---更新操作
- 使用spring jdbc template简化jdbc数据库操作实例代码
- JDBC之使用继承简化代码量
- 使用元数据简化jdbc代码
- 使用泛型和反射技术简化Spring jdbcTemplate的使用
- 使用 元数据简化JDBC代码
- 使用工具类来简化代码JDBCUtils
- 使用元数据简化jdbc代码
- 使用元数据简化jdbc代码---查询操作(用到反射)
- 简化JDBC的使用(1)
- 一个使用J2ME技术实现的计算器的代码
- 一个使用J2ME技术实现的计算器的代码