2021-3-1
1.JDBC的概念
2.JDBC的快速入门
3.JDBC的功能类详解
注册驱动
数据库连接
数据库连接对象
执行SQL
4.JDBC案例(了解,后续开发越来越越简洁,传统方式仅了解参考,查询,新增,修改,删除)
查询
新增
5.JDBC的工具类
driverClass=com.mysql.cj.jdbc.Driver
url=jdbc:mysql://192.168.1.171:3306/user
username=root
password=123456
package utils;
import java.io.IOException;
import java.io.InputStream;
import java.sql.*;
import java.util.Properties;
/**
* @author wc
* @Date: 2021/03/02/10:31
*/
/*
* JDBC工具类
* */
public class JDBCUtils {
//1.私有构造方法
private JDBCUtils() {
}
//2.声明所需要的配置变量
//私有静态变量
private static String driverClass;
private static String url;
private static String username;
private static String password;
private static Connection con;
//3.提供静态代码块,读取配置文件信息为变量赋值,注册驱动
//IO流中properties方法 可从流对象中加载信息
static {
//获取本类class对象 //获取类加载器 //InputStream字节输入流对象
try {
InputStream resourceAsStream = JDBCUtils.class.getClassLoader().getResourceAsStream("config.properties");
Properties properties=new Properties();
properties.load(resourceAsStream);
driverClass=properties.getProperty("driverClass");
url=properties.getProperty("url");
username=properties.getProperty("username");
password=properties.getProperty("password");
//注册驱动
Class.forName(driverClass);
} catch (Exception e) {
e.printStackTrace();
}
}
//4.提供获取数据库连接方法 公用的 静态的
public static Connection getConnection(){
try {
con=DriverManager.getConnection(url,username,password);
} catch (SQLException e) {
e.printStackTrace();
}
//有返回值
return con;
}
//5.提供释放资源的方法
//void无返回值
public static void close(Statement sta, Connection con, ResultSet rs){
if (sta!=null){
try {
sta.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if (con!=null){
try {
con.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if (rs!=null){
try {
rs.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
//方法重载
public static void close(Statement sta, Connection con){
if (sta!=null){
try {
sta.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
if (con!=null){
try {
con.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}