1. 模板类
- 提供了JDBC模板,Spring框架提供的
- JdbcTemplate类
这个模板类用于操作数据库
- JdbcTemplate类
JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);
jdbcTemplate.update(sql, params);
jdbcTemplate.queryForObject(sql, new BeanMapper(),params);
jdbcTemplate.query(sql, new BeanMapper(),params);
需要说明的是,这里BeanMapper是RowMapper接口的一个实现类,用于将查询的数据封装
class BeanMapper implements RowMapper<Account>{
public Account mapRow(ResultSet rs, int arg1) throws SQLException {
Account account = new Account();
account.setId(rs.getInt("id"));
account.setName(rs.getString("name"));
account.setMoney(rs.getDouble("money"));
return account;
}
}
- Spring框架可以整合Hibernate框架,也提供了模板类
- HibernateTemplate类
2. 导入Jar包
- 先引入IOC基本的6个jar包
- 再引入Spring-aop的jar包
- 最后引入JDBC模板需要的jar包
- MySQL数据库的驱动包
- Spring-jdbc.jar
- Spring-tx.jar
后期全部jar包都导入就完事了。
3. 使用new 对象的方法测试
@Test
public void run1(){
// 创建连接池,先使用Spring框架内置的连接池
DriverManagerDataSource dataSource = new DriverManagerDataSource();
dataSource.setDriverClassName("com.mysql.jdbc.Driver");
dataSource.setUrl("jdbc:mysql:///spring_day03");
dataSource.setUsername("root");
dataSource.setPassword("root");
// 创建模板类
JdbcTemplate jdbcTemplate = new JdbcTemplate(dataSource);
// 完成数据的添加
jdbcTemplate.update("insert into t_account values (null,?,?)", "测试",10000);
}
4. 使用IOC配置DataSource、JdbcTemplate
<!-- 步骤一:Spring管理内置的连接池 -->
<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName" value="com.mysql.jdbc.Driver"/>
<property name="url" value="jdbc:mysql:///spring_day03"/>
<property name="username" value="root"/>
<property name="password" value="root"/>
</bean>
<!-- 步骤二:Spring管理模板类 -->
<bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate">
<property name="dataSource" ref="dataSource"/>
</bean>