JdbcTemplate类
打开mysql
新建一个spring的数据库
导入jar包
src下的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"
xsi:schemaLocation="http://www.springframework.org/schema/beans
http://www.springframework.org/schema/beans/spring-beans-4.3.xsd">
<!-- 配置数据源 -->
<bean id="dataSource" class="org.springframework.jdbc.datasource.DriverManagerDataSource">
<property name="driverClassName" value="com.mysql.jdbc.Driver"/>
<property name="url" value="jdbc:mysql://localhost/spring?serverTimezone=UTC&useSSL=false&characterEncoding=utf8"/>
<property name="username" value="root"/>
<property name="password" value="123456"/>
</bean>
<!-- 配置数据库模板 -->
<bean id="jdbcTemplate" class="org.springframework.jdbc.core.JdbcTemplate">
<property name="dataSource" ref="dataSource"/>
</bean>
</beans>
JdbcTemplateTest 测试类
package com.itheima.jdbc;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import org.springframework.jdbc.core.JdbcTemplate;
public class JdbcTemplateTest {
/*
* execute()建立表
*/
public static void main(String[] args) {
ApplicationContext applicationContext = new
ClassPathXmlApplicationContext("applicationContext.xml");
System.out.println("execute()建立表");
//获取JdbcTemplate实例
JdbcTemplate jdbcTemplate = (JdbcTemplate)
applicationContext.getBean("jdbcTemplate");
System.out.println("获取JdbcTemplate实例");
//使用execute创建表account
jdbcTemplate.execute("create table account("
+ "id int primary key auto_increment,"
+"username varchar(50),"
+"balance double)");
System.out.println("表account创建成功");
}
}
运行结果:
错误分析
eption in thread “main” org.springframework.jdbc.CannotGetJdbcConnectionExce
发生这个错误,是因为这个jar包
只需把这个包换成5.1.8版本就行了
JdbcTemplate类中execute()方法的使用
JUnit测试单元
package com.itheima.jdbc;
import org.junit.Test;
import org.springframework.context.ApplicationContext;
import org.springframework.context.support.ClassPathXmlApplicationContext;
import org.springframework.jdbc.core.JdbcTemplate;
public class JdbcTemplateTest {
/*
* execute()建立表
*/
// public static void main(String[] args) {
// ApplicationContext applicationContext = new
// ClassPathXmlApplicationContext("applicationContext.xml");
// //获取JdbcTemplate实例
// JdbcTemplate jdbcTemplate = (JdbcTemplate)
// applicationContext.getBean("jdbcTemplate");
// //使用execute创建表account
// jdbcTemplate.execute("create table account("
// + "id int primary key auto_increment,"
// +"username varchar(50),"
// +"balance double)");
// System.out.println("表account创建成功");
// }
/**
* 学习junit4测试
*/
@Test
public void mainTest() {
//加载配置文件
ApplicationContext applicationContext = new
ClassPathXmlApplicationContext("applicationContext.xml");
//获取JdbcTemplate实例
JdbcTemplate jdbcTemplate = (JdbcTemplate)
applicationContext.getBean("jdbcTemplate");
//使用execute()方法执行sql语句,创建用户账号管理表account
jdbcTemplate.execute("create table account("
+ "id int primary key auto_increment,"
+"username varchar(50),"
+"balance double)");
System.out.println("表account创建成功");
}
}
运行
JdbcTemplate类中update()方法的使用
添加用户
@Test
public void addAccountTest() {
// 加载配置文件
ApplicationContext applicationContext = new
ClassPathXmlApplicationContext("applicationContext.xml");
// 获得AccountDao实例
AccountDao accountDao = (AccountDao) applicationContext.getBean("accountDao");
// 创建Account用户数据
Account user1 = new Account();
user1.setUsername("tom");
user1.setBalance(1000.00);
// 执行方法
int num = accountDao.addAccount(user1);
if(num>0) {
System.out.println("添加"+num+"用户成功。");
}else {
System.out.println("添加用户失败。");
}
}
更新用户
@Test
public void updateAccountTest() {
// 加载配置文件
ApplicationContext applicationContext = new
ClassPathXmlApplicationContext("applicationContext.xml");
// 获得AccountDao实例
AccountDao accountDao = (AccountDao) applicationContext.getBean("accountDao");
// 创建Account用户数据
Account user1 = new Account();
user1.setId(1);
user1.setUsername("tom1");
user1.setBalance(2000.00);
// 执行方法
int num = accountDao.updateAccount(user1);
if(num>0) {
System.out.println("修改"+num+"条用户成功。");
}else {
System.out.println("修改用户失败。");
}
}
删除用户
@Test
public void deleteAccountTest() {
// 加载配置文件
ApplicationContext applicationContext = new
ClassPathXmlApplicationContext("applicationContext.xml");
// 获得AccountDao实例
AccountDao accountDao = (AccountDao) applicationContext.getBean("accountDao");
// 执行方法
int num = accountDao.deleteAccount(1);
if(num>0) {
System.out.println("删除"+num+"条用户成功。");
}else {
System.out.println("删除用户失败。");
}
}