jsp实现数据库读取并展示数据
时间: 2024-03-09 21:45:27 浏览: 74
在JSP中,我们可以通过JDBC连接数据库并读取数据,然后将数据展示在页面上。假设我们要展示一个学生表中的学生信息,具体实现步骤如下:
1. 导入JDBC驱动包
在项目中导入JDBC驱动包,例如MySQL的驱动包mysql-connector-java.jar。
2. 建立数据库连接
在JSP页面中使用JDBC连接数据库,例如连接MySQL数据库:
```jsp
<%
// 定义数据库连接信息
String url = "jdbc:mysql://localhost:3306/test";
String user = "root";
String password = "123456";
// 加载数据库驱动
Class.forName("com.mysql.jdbc.Driver");
// 建立数据库连接
Connection conn = DriverManager.getConnection(url, user, password);
%>
```
3. 查询数据库数据
使用JDBC执行SQL语句查询数据库数据,例如查询学生表中的学生信息:
```jsp
<%
// 查询学生表中的学生信息
String sql = "SELECT * FROM student";
PreparedStatement ps = conn.prepareStatement(sql);
ResultSet rs = ps.executeQuery();
%>
```
4. 展示数据到页面
使用JSP标签将数据展示到页面上,例如使用表格展示学生信息:
```jsp
<table>
<thead>
<tr>
<th>学号</th>
<th>姓名</th>
<th>性别</th>
<th>年龄</th>
</tr>
</thead>
<tbody>
<% while (rs.next()) { %>
<tr>
<td><%= rs.getString("id") %></td>
<td><%= rs.getString("name") %></td>
<td><%= rs.getString("sex") %></td>
<td><%= rs.getInt("age") %></td>
</tr>
<% } %>
</tbody>
</table>
```
在展示数据时,使用while循环遍历ResultSet对象中的数据,然后使用JSP表达式<%= %>将数据展示到页面上。
5. 关闭数据库连接
在JSP页面结束时,关闭数据库连接,释放资源。
```jsp
<%
// 关闭数据库连接
rs.close();
ps.close();
conn.close();
%>
```
完整的JSP代码如下所示:
```jsp
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ page import="java.sql.*" %>
<html>
<head>
<title>展示学生信息</title>
</head>
<body>
<%
// 定义数据库连接信息
String url = "jdbc:mysql://localhost:3306/test";
String user = "root";
String password = "123456";
// 加载数据库驱动
Class.forName("com.mysql.jdbc.Driver");
// 建立数据库连接
Connection conn = DriverManager.getConnection(url, user, password);
// 查询学生表中的学生信息
String sql = "SELECT * FROM student";
PreparedStatement ps = conn.prepareStatement(sql);
ResultSet rs = ps.executeQuery();
%>
<table>
<thead>
<tr>
<th>学号</th>
<th>姓名</th>
<th>性别</th>
<th>年龄</th>
</tr>
</thead>
<tbody>
<% while (rs.next()) { %>
<tr>
<td><%= rs.getString("id") %></td>
<td><%= rs.getString("name") %></td>
<td><%= rs.getString("sex") %></td>
<td><%= rs.getInt("age") %></td>
</tr>
<% } %>
</tbody>
</table>
<%
// 关闭数据库连接
rs.close();
ps.close();
conn.close();
%>
</body>
</html>
```
注意:上述代码只是示例,实际开发中应该将数据库连接信息和SQL语句等敏感信息存储在配置文件中,并使用JNDI等方式获取数据库连接,以提高安全性和可维护性。
阅读全文