JDBC(Java Database Connectivity)是Java语言中用于连接和操作数据库的标准API。以下是JDBC的详细解释:
定义:JDBC是Java提供的一套用于执行SQL语句的API,它允许Java应用程序与各种关系型数据库(如MySQL、Oracle、SQL Server等)进行交互。
作用:通过JDBC,Java程序可以连接数据库、执行SQL查询、处理查询结果,以及管理数据库事务。
负责管理数据库驱动程序,用于建立与数据库的连接。
通过DriverManager.getConnection()方法获取数据库连接。
表示与数据库的会话,用于执行SQL语句和管理事务。
通过Connection对象可以创建Statement、PreparedStatement或CallableStatement对象。
用于执行静态SQL语句(如SELECT、INSERT、UPDATE、DELETE等)。
适用于简单查询,但容易受到SQL注入攻击。
预编译SQL语句,提高执行效率并防止SQL注入。
通过?占位符传递参数,更安全且高效。
用于调用数据库存储过程或函数。
支持输入参数、输出参数和返回值。
表示SQL查询的结果集,用于遍历和处理查询结果。
通过ResultSet对象可以获取查询结果中的每一行数据。
Class.forName("com.mysql.cj.jdbc.Driver");
Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/mydb", "username", "password");
Statement stmt = conn.createStatement();
// 或使用PreparedStatement
PreparedStatement pstmt = conn.prepareStatement("SELECT * FROM users WHERE id = ?");
pstmt.setInt(1, 1);
ResultSet rs = stmt.executeQuery("SELECT * FROM users");
// 或使用PreparedStatement
ResultSet rs = pstmt.executeQuery();
while (rs.next()) {
String name = rs.getString("name");
System.out.println(name);
}
rs.close();
stmt.close();
conn.close();