下面是JSP使用JDBC连接MYSQL数据库的完整攻略。
准备工作
- 下载并安装MYSQL数据库。
- 下载并安装Tomcat服务器。
- 在Tomcat中配置JDBC驱动程序。将MYSQL的JDBC驱动程序(mysql-connector-java-x.x.xx.jar)放到Tomcat的lib目录下。如果没有该目录,需要手动创建。
JSP连接MYSQL数据库的步骤
- 引入JDBC驱动程序。在JSP页面中引入MYSQL的JDBC驱动程序:
<%@ page import="java.sql.*" %>
<%@ page import="com.mysql.jdbc.Driver" %>
- 创建一个JDBC连接对象。使用DriverManager.getConnection()方法创建一个JDBC连接对象:
String url = "jdbc:mysql://localhost:3306/testdb";
String username = "root";
String password = "123456";
Connection conn = DriverManager.getConnection(url, username, password);
其中,url为MYSQL数据库的连接URL,用户名和密码是连接数据库的凭证。
- 执行SQL语句。使用创建好的JDBC连接对象,执行SQL语句:
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("SELECT * FROM members");
while(rs.next()) {
String name = rs.getString("name");
int age = rs.getInt("age");
out.println(name + ":" + age);
}
其中,Statement对象用于执行SQL语句,ResultSet对象存储了SQL查询的结果集。这段示例的SQL语句查询了一个名为members的表,将所有成员的姓名和年龄输出到页面。
- 关闭JDBC连接。最后,需要关闭JDBC连接对象和所有相关的对象:
rs.close();
stmt.close();
conn.close();
示例说明
以下是两条示例说明,演示如何在JSP页面中连接MYSQL数据库。
示例一:查询并显示商品
假设我们有一个products表,每个商品包含name和price两个字段。以下的JSP页面将连接到数据库并查询所有商品记录,并将它们显示到一个HTML表格中。
<%@ page import="java.sql.*" %>
<%@ page import="com.mysql.jdbc.Driver" %>
<%
// 创建JDBC连接对象
String url = "jdbc:mysql://localhost:3306/testdb";
String username = "root";
String password = "123456";
Connection conn = DriverManager.getConnection(url, username, password);
// 查询所有商品
Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery("SELECT * FROM products");
// 显示商品表格
out.println("<table>");
out.println("<tr><th>Name</th><th>Price</th></tr>");
while(rs.next()) {
String name = rs.getString("name");
double price = rs.getDouble("price");
out.println("<tr><td>" + name + "</td><td>" + price + "</td></tr>");
}
out.println("</table>");
// 关闭JDBC连接
rs.close();
stmt.close();
conn.close();
%>
示例二:添加新的商品
假设我们想要添加新的商品到products表中。以下的JSP页面将连接到数据库并插入一条新的商品记录。
<%@ page import="java.sql.*" %>
<%@ page import="com.mysql.jdbc.Driver" %>
<%
// 获取表单提交的商品信息
String name = request.getParameter("name");
double price = Double.parseDouble(request.getParameter("price"));
// 创建JDBC连接对象
String url = "jdbc:mysql://localhost:3306/testdb";
String username = "root";
String password = "123456";
Connection conn = DriverManager.getConnection(url, username, password);
// 插入新的商品
String sql = "INSERT INTO products (name, price) VALUES (?, ?)";
PreparedStatement stmt = conn.prepareStatement(sql);
stmt.setString(1, name);
stmt.setDouble(2, price);
stmt.executeUpdate();
// 显示成功信息
out.println("商品已成功添加!");
// 关闭JDBC连接
stmt.close();
conn.close();
%>
这个示例中使用了PreparedStatement对象,它可以防止SQL注入攻击。用户通过表单输入新的商品信息。JSP页面连接数据库,并将新的商品信息插入到products表中。最后,页面将显示成功信息,说明商品已成功添加到数据库中。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:JSP使用JDBC连接MYSQL数据库的方法 - Python技术站