Spring JdbcTemplate基本使用
JdbcTemplate 概述
它是 Spring 框架中提供的一个对象,是对原始繁琐的 JdbcAPI 对象的简单封装。Spring 框架为我们提供了很多的操作模板类。例如:操作关系型数据的 JdbcTemplate 和HibernateTemplate,操作 nosql 数据库的 RedisTemplate,操作消息队列的 JmsTemplate 等等。
JdbcTemplate 开发步骤
1.导入 spring-jdbc 和 spring-tx 坐标
2.创建数据库表和实体
3.创建 JdbcTemplate 对象
4.执行数据库操作
Jdbc 产生 JdbcTemplate 对象
我们可以将 JdbcTemplate 的创建权交给 Spring,将数据源 DataSoure 的创建权也交给 Spring,在 Spring 容器内部将数据源 DataSource 注入到 JdbcTemplate 模板对象中,配置如下:
<bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate">
<property name="dataSource" ref="dataSource"/>
</bean>
执行数据库操作
更新操作:
jdbcTemplate.update(sql,params)
查询操作:
jdbcTemplate.query(sql, Mapper, params)
jdbcTemplate.queryForObject(sql, Mapper, params)
@Autowired
private DataSource dataSource;
@Test
public void test1() {
JdbcTemplate jdbcTemplate = new JdbcTemplate();
jdbcTemplate.setDataSource(dataSource);
int row = jdbcTemplate.update("insert into account values(?,?)", 5000, "andy");
int update = jdbcTemplate.update("update account set money = 10000 where name = ?", "tom");
int tom = jdbcTemplate.update("delete from account where name = ?", "tom");
System.out.println(tom);
System.out.println(row);
System.out.println(update);
}
@Test
public void test2() {
JdbcTemplate jdbcTemplate = new JdbcTemplate();
jdbcTemplate.setDataSource(dataSource);
List<Account> list = jdbcTemplate.query("select * from account", new BeanPropertyRowMapper<Account>(Account.class));
System.out.println(list);
Account account = jdbcTemplate.queryForObject("select * from account where name = 'andy'", new BeanPropertyRowMapper<Account>(Account.class));
System.out.println(account);
Long aLong = jdbcTemplate.queryForObject("select count(*) from account", Long.class);
System.out.println(aLong);
}
浙公网安备 33010602011771号