下面是如何在JSP中使用JDBC连接MySQL的攻略:
下面是如何在JSP中使用JDBC连接MySQL的攻略:
1. 添加MySQL JDBC驱动
1.1 下载MySQL JDBC驱动:在MySQL官网下载mysql-connector-java
jar包。下载地址:https://dev.mysql.com/downloads/connector/j/。
1.2 将mysql-connector-java
jar包添加到WEB-INF/lib目录中:将下载好的MySQL JDBC jar包复制到Web项目的WEB-INF/lib
目录下。
1.3 配置JDBC连接参数:在JSP页面中添加如下代码,配置MySQL JDBC连接参数,并且注册JDBC驱动。
<%
// 配置MySQL JDBC连接参数
String url = "jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf-8";
String user = "root";
String password = "123456";
// 注册MySQL JDBC驱动
Class.forName("com.mysql.cj.jdbc.Driver");
%>
2. 使用JDBC连接MySQL
2.1 建立JDBC连接:使用DriverManager.getConnection()
方法,传入JDBC连接参数,建立JDBC连接。
<%
// 建立MySQL JDBC连接
Connection conn = DriverManager.getConnection(url, user, password);
%>
2.2 创建SQL语句:创建需要执行的SQL语句。
<%
// 创建SQL语句
String sql = "SELECT * FROM user";
%>
2.3 执行SQL语句:使用JDBC的Statement
或PreparedStatement
对象执行SQL语句,获取相应结果集。
2.3.1 使用Statement
对象执行SQL语句:
<%
// 执行SQL语句并获取结果集
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery(sql);
%>
2.3.2 使用PreparedStatement
对象执行SQL语句:
<%
// 执行SQL语句并获取结果集
PreparedStatement pstmt = conn.prepareStatement(sql);
ResultSet rs = pstmt.executeQuery();
%>
2.4 处理查询结果:遍历结果集,处理查询结果。
<%
// 处理查询结果
while (rs.next()) {
int id = rs.getInt("id");
String name = rs.getString("name");
String email = rs.getString("email");
// 输出查询结果
out.println("id: "+ id + ", name: " + name + ", email: " + email + "<br>");
}
%>
3. 关闭JDBC连接
使用完JDBC连接后,需要关闭连接,以释放资源。
3.1 关闭结果集、声明和连接:
<%
// 关闭结果集、声明和连接
rs.close();
stmt.close();
conn.close();
%>
至此,使用JDBC连接MySQL的过程就完成了。
下面是两个示例说明:
示例一:使用Statement
对象执行SQL语句
<%@ page contentType="text/html; charset=utf-8" %>
<%@ page language="java" %>
<!DOCTYPE html>
<html>
<head>
<title>使用JDBC连接MySQL示例1</title>
</head>
<body>
<h1>使用JDBC连接MySQL示例1:</h1>
<%
// 配置MySQL JDBC连接参数
String url = "jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf-8";
String user = "root";
String password = "123456";
// 注册MySQL JDBC驱动
Class.forName("com.mysql.cj.jdbc.Driver");
// 建立MySQL JDBC连接
Connection conn = DriverManager.getConnection(url, user, password);
// 创建SQL语句
String sql = "SELECT * FROM user";
// 执行SQL语句并获取结果集
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery(sql);
// 处理查询结果
while (rs.next()) {
int id = rs.getInt("id");
String name = rs.getString("name");
String email = rs.getString("email");
// 输出查询结果
out.println("id: "+ id + ", name: " + name + ", email: " + email + "<br>");
}
// 关闭结果集、声明和连接
rs.close();
stmt.close();
conn.close();
%>
</body>
</html>
示例二:使用PreparedStatement
对象执行SQL语句
<%@ page contentType="text/html; charset=utf-8" %>
<%@ page language="java" %>
<!DOCTYPE html>
<html>
<head>
<title>使用JDBC连接MySQL示例2</title>
</head>
<body>
<h1>使用JDBC连接MySQL示例2:</h1>
<%
// 配置MySQL JDBC连接参数
String url = "jdbc:mysql://localhost:3306/test?useUnicode=true&characterEncoding=utf-8";
String user = "root";
String password = "123456";
// 注册MySQL JDBC驱动
Class.forName("com.mysql.cj.jdbc.Driver");
// 建立MySQL JDBC连接
Connection conn = DriverManager.getConnection(url, user, password);
// 创建SQL语句
String sql = "SELECT * FROM user WHERE name=?";
// 执行SQL语句并获取结果集
PreparedStatement pstmt = conn.prepareStatement(sql);
pstmt.setString(1, "Tom");
ResultSet rs = pstmt.executeQuery();
// 处理查询结果
while (rs.next()) {
int id = rs.getInt("id");
String name = rs.getString("name");
String email = rs.getString("email");
// 输出查询结果
out.println("id: "+ id + ", name: " + name + ", email: " + email + "<br>");
}
// 关闭结果集、声明和连接
rs.close();
pstmt.close();
conn.close();
%>
</body>
</html>
本文标题为:如何在Jsp中使用JDBC来联结MySql
基础教程推荐
- java – Oracle表格就像一个队列 2023-11-04
- java后端合成图片的实现示例 2023-01-09
- 理解JDK动态代理为什么必须要基于接口 2023-06-10
- java – 我需要为mysql表的每一行分配一个随机但唯一的ID.如果行包含相同的值,则ID应相同 2023-11-05
- Java深入讲解异常处理try catch的使用 2022-12-08
- SpringBoot带你实现一个点餐小程序 2023-03-06
- Java获取Excel中图片所在的行和列坐标位置 2023-03-22
- Java数据结构之线段树的原理与实现 2023-01-08
- java控制台输出版多人聊天室 2023-05-09
- Spring Retry重试框架的使用讲解 2023-06-30