常规数据库连接一般由以下六个步骤构成:
- 装载数据库驱动程序;
- 建立数据库连接;
- 创建数据库操作对象;
- 访问数据库,执行sql语句;
- 处理返回结果集;
- 断开数据库连接。
连接mysql 5.0版本
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
public class Jdbc {
public static final String URL = "jdbc:mysql://localhost:3306/mytest";
public static final String USER = "root";
public static final String PASSWORD = "123456";
public static void main(String[] args) throws Exception {
//1.加载驱动程序
Class.forName("com.mysql.jdbc.Driver");
//2. 获得数据库连接
Connection conn = DriverManager.getConnection(URL, USER, PASSWORD);
//3.操作数据库,实现增删改查
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("SELECT id, teacher_id FROM class");
//如果有数据,rs.next()返回true
while(rs.next()){
System.out.println(rs.getInt("id")+" 老师id:"+rs.getInt("teacher_id"));
}
}
}
连接mysql 8.0版本
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.ResultSet;
import java.sql.Statement;
public class Jdbc {
public static final String URL = "jdbc:mysql://localhost:3306/mytest?useUnicode=true&characterEncoding=UTF-8&serverTimezone=UTC";
public static final String USER = "root";
public static final String PASSWORD = "123456";
public static void main(String[] args) throws Exception {
//1.加载驱动程序
Class.forName("com.mysql.cj.jdbc.Driver");
//2. 获得数据库连接
Connection conn = DriverManager.getConnection(URL, USER, PASSWORD);
//3.操作数据库,实现增删改查
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("SELECT id, teacher_id FROM class");
//如果有数据,rs.next()返回true
while(rs.next()){
System.out.println(rs.getInt("id")+" 老师id:"+rs.getInt("teacher_id"));
}
}
}
简单的CRUD操作
import java.sql.*;
public class Jdbc {
public static final String URL = "jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=UTF-8&serverTimezone=UTC";
public static final String USER = "root";
public static final String PASSWORD = "123456";
public static void main(String[] args) throws Exception {
//1.加载驱动程序
Class.forName("com.mysql.cj.jdbc.Driver");
//2. 获得数据库连接
Connection conn = DriverManager.getConnection(URL, USER, PASSWORD);
//3.操作数据库,实现增删改查
Statement stmt = conn.createStatement();
try {
//查询操作
ResultSet rs = stmt.executeQuery("SELECT id, teacher_id FROM class");
//如果有数据,rs.next()返回true
while (rs.next()) {
System.out.println(rs.getInt("id") + " 老师id:" + rs.getInt("teacher_id"));
}
//添加操作
StringBuffer sbf = new StringBuffer("insert into class (id, teacher_id)");
sbf.append(" values (2,3)");
int success = stmt.executeUpdate(sbf.toString());
//更新操作
StringBuffer sbf2 = new StringBuffer("update class set teacher_id=4 where id=2");
int success2 = stmt.executeUpdate(sbf2.toString());
//删除操作
StringBuffer sbf3 = new StringBuffer("delete from class where id=2");
int success3 = stmt.executeUpdate(sbf3.toString());
} catch (Exception e) {
e.printStackTrace();
} finally {
//执行完数据库操作后记得关闭数据库连接资源
try {
stmt.close();
conn.close();
} catch (SQLException e) {
e.printStackTrace();
}
}
}
}