17.2 JDBC 技术
它是一套面向对象的应用程序接口,指定了统一地访问各种关系型数据库的标准接口。
17.3 JDBC 中常见的类和接口
17.3.1 DriverManager 类
用于管理数据库中的驱动程序。
//第一步:注册驱动
DriverManager.registerDriver(new Driver());
//Java中的一个类 用于管理数据库驱动程序 Java中的一个方法 用于注册JDBC驱动程序
//驱动管理器,
17.3.2 Connerction 接口
connetion 接口代表与特定的数据库的链接,在连接上下文中执行 SQL 语句并返回结果。
//第二步:获取连接
connection = DriverManager.getConnection(
"jdbc:mysql://localhost:3306/school_java","root","123456");
// 技术 什么数据库 主机 端口号 数据库名
例题:
import java.sql.Connection;
import java.sql.DriverManager;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
import com.mysql.cj.jdbc.Driver;
public class JDBCDemo {
Connection connection;
public static void main(String[] args) throws SQLException {
JDBCDemo jdbcDemo = new JDBCDemo();
jdbcDemo.getConnection();
jdbcDemo.selectAll();
jdbcDemo.add(4,"Web");
jdbcDemo.delete(4,"Web");
jdbcDemo.selectAll();
jdbcDemo.close();
}
public void getConnection() throws SQLException {
//第一步:注册驱动
DriverManager.registerDriver(new Driver());
//Java中的一个类 用于管理数据库驱动程序 Java中的一个方法 用于注册JDBC驱动程序
//驱动管理器,
//第二步:获取连接
connection = DriverManager.getConnection(
"jdbc:mysql://localhost:3306/school_java","root","123456");
// 技术 什么数据库 主机 端口号 数据库名
}
//增加
public void add(int id, String name) throws SQLException {
//第三步:获取statement对象
PreparedStatement preparedStatement = connection.prepareStatement("insert into couse values(?,?);");
//Java中用于预编译SQL语句的接口
preparedStatement.setInt(1, id);
preparedStatement.setString(2, name);
//第四步: 执行SQL语句
preparedStatement.executeUpdate();
}
//删除
public void delete(int id,String name) throws SQLException {
PreparedStatement preparedStatement = connection.prepareStatement("delete from couse where id = ? ;");
preparedStatement.setInt(1, id);
preparedStatement .executeUpdate();
}
//修改
public void update(int id,String name) {
}
//查找
public void selectAll() throws SQLException {
//第三步:获取statement对象
PreparedStatement preparedStatement1 = connection.prepareStatement("select * from couse;");
//可以传入sql语句
//第四步: 执行SQL语句返回结果集
ResultSet resultSet1 = preparedStatement1.executeQuery();
//结果集来储存结果 查询
//第五步:遍历结果集
while(resultSet1.next()) {
System.out.print(resultSet1.getInt("id") + " ");
System.out.print(resultSet1.getString("name"));
System.out.println();
}
//6.关闭
resultSet1.close();
preparedStatement1.close();
}
public void close() throws SQLException {
//第六步:关闭连接释放资源
connection.close();
}
}