1.applicationContext.xml配置
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation=" http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context.xsd http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans.xsd"> <!-- 加载jdbc,properties --> <context:property-placeholder location="classpath:jdbc.properties"/> <!-- 配置数据源 --> <bean id="dataSource" class="com.mchange.v2.c3p0.ComboPooledDataSource" > <property name="driverClass" value="${jdbc.driver}"></property> <property name="jdbcUrl" value="${jdbc.url}"></property> <property name="user" value="${jdbc.username}"></property> <property name="password" value="${jdbc.password}"></property> </bean> <!-- 配置Jdbc模板对象 --> <bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate"> <property name="dataSource" ref="dataSource"/> </bean> </beans>
2.jdbc.properties配置
jdbc.driver=com.mysql.jdbc.Driver jdbc.url=jdbc:mysql:///springJdbcTemplateDataSource jdbc.username=root jdbc.password=root
3.测试类
1).表结构
2).测试类
@RunWith(SpringJUnit4ClassRunner.class) @ContextConfiguration("classpath:applicationContext.xml") public class JdbcTemplateTest { @Autowired private JdbcTemplate jdbcTemplate; @Test public void test2(){ jdbcTemplate.update("insert into account values (?,?)", "sorry", 5000); } }
4.增删改查
@RunWith(SpringJUnit4ClassRunner.class) @ContextConfiguration("classpath:applicationContext.xml") public class JdbcTemplateTest { @Autowired private JdbcTemplate jdbcTemplate; //增加 insert @Test public void test1(){ jdbcTemplate.update("insert into account values (?,?)", "sorry", 5000); } //删除 delete @Test public void test2(){ jdbcTemplate.update("delete from account where name = ?", "jack"); } //更改 update @Test public void test3(){ jdbcTemplate.update("update account set money = ? where name=?", 99999,"jack" ); } //查找 select @Test public void test4(){ List <Account> resultList = jdbcTemplate.query("select * from account where money > ?", new BeanPropertyRowMapper <Account>(Account.class),5000); System.out.println(resultList); } //查询单个实体 @Test public void test5(){ Account pojo = jdbcTemplate.queryForObject("select * from account where name = ?", new BeanPropertyRowMapper <Account>(Account.class), "jerry"); System.out.println(pojo); } //查询单个值 @Test public void test6(){ Long res= jdbcTemplate.queryForObject("select count(*) from account where money = ?", Long.class,5000); System.out.println(res); } }
实体类Account
public class Account { private String name; private double money; get/set方法 toString方法 }