Spring-JdbcTemplate
了解知道即可
JdbcTemplate环境配置
先加入依赖:
在pom.xml中要引入spring和mysql的依赖:
spring-milestones
Spring Milestones
https://repo.spring.io/milestone
false
org.springframework
spring-context
6.0.0-M2
org.springframework
spring-jdbc
6.0.0-M2
mysql
mysql-connector-java
8.0.30
junit
junit
4.13.2
test
创建一个完整的javabean类:
有数据库的表的格式一致。
package com.hei.bean;
public class User {
private Integer id;
private String real_name;
private Integer age;
public User(){
}
public User(Integer id, String real_name, Integer age) {
this.id = id;
this.real_name = real_name;
this.age = age;
}
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public String getReal_name() {
return real_name;
}
public void setReal_name(String real_name) {
this.real_name = real_name;
}
public Integer getAge() {
return age;
}
public void setAge(Integer age) {
this.age = age;
}
@Override
public String toString() {
return "User{" +
"id=" + id +
", real_name='" + real_name + '\'' +
", age=" + age +
'}';
}
}
创建一个数据源,用于mysql的连接:
接口实现DataSource,要重写所有的方法,在连接方法中,要创建驱动,获取数据库连接对象。
package com.hei.bean;
import javax.sql.DataSource;
import java.io.PrintWriter;
import java.sql.*;
import java.util.concurrent.Callable;
import java.util.logging.Logger;
public class MyDateSorce implements DataSource {
private String diver;
private String url;
private String username;
private String password;
public void setDiver(String diver) {
this.diver = diver;
}
public void setUrl(String url) {
this.url = url;
}
public void setUsername(String username) {
this.username = username;
}
public void setPassword(String password) {
this.password = password;
}
@Override
public Connection getConnection() throws SQLException {
//注册驱动
try {
Class.forName(diver);
//获取数据库连接对象
Connection c=DriverManager.getConnection(url,username,password);
return c;
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
@Override
public Connection getConnection(String username, String password) throws SQLException {
return null;
}
@Override
public PrintWriter getLogWriter() throws SQLException {
return null;
}
@Override
public void setLogWriter(PrintWriter out) throws SQLException {
}
@Override
public void setLoginTimeout(int seconds) throws SQLException {
}
@Override
public int getLoginTimeout() throws SQLException {
return 0;
}
@Override
public ConnectionBuilder createConnectionBuilder() throws SQLException {
return DataSource.super.createConnectionBuilder();
}
@Override
public Logger getParentLogger() throws SQLFeatureNotSupportedException {
return null;
}
@Override
public ShardingKeyBuilder createShardingKeyBuilder() throws SQLException {
return DataSource.super.createShardingKeyBuilder();
}
@Override
public T unwrap(Class iface) throws SQLException {
return null;
}
@Override
public boolean isWrapperFor(Class iface) throws SQLException {
return false;
}
}
在配置文件(spring.xml)中,进行数据源的配置:
测试类中,对数据库的增加一个对象:
在这只演示一个增加方法:
public class Test {
@org.junit.Test
public void test(){
ApplicationContext applicationContext=new ClassPathXmlApplicationContext("spring.xml");
JdbcTemplate j= applicationContext.getBean("jdbcTemplate", JdbcTemplate.class);
//System.out.println(j);
//insert语句
String sql=" insert into t_table(id,real_name,age) values(?,?,?)";
j.update(sql,4,"李明",23);
}
}