jsp+jdbc+mysql实现留言板
时间: 2023-09-08 12:16:22 浏览: 154
以下是一个简单的JSP和MySQL数据库的留言板实现示例。
1. 创建一个数据库和表来存储留言信息
首先,我们需要创建一个MySQL数据库和一个表来存储留言信息。可以使用以下SQL语句来创建一个名为“message_board”的数据库和一个名为“messages”的表:
```
CREATE DATABASE message_board;
USE message_board;
CREATE TABLE messages (
id INT NOT NULL AUTO_INCREMENT,
name VARCHAR(255) NOT NULL,
email VARCHAR(255) NOT NULL,
message TEXT NOT NULL,
created_at DATETIME NOT NULL,
PRIMARY KEY (id)
);
```
2. 创建一个JSP页面来显示留言板
接下来,我们将创建一个名为“index.jsp”的JSP页面,该页面将显示留言板。在此页面中,我们将使用JSTL标签库来从数据库中检索并显示留言。
```
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>留言板</title>
</head>
<body>
<h1>留言板</h1>
<form action="add_message.jsp" method="post">
<label for="name">姓名:</label>
<input type="text" name="name" required><br>
<label for="email">邮箱:</label>
<input type="email" name="email" required><br>
<label for="message">留言:</label>
<textarea name="message" required></textarea><br>
<input type="submit" value="提交留言">
</form>
<hr>
<c:forEach var="message" items="${messages}">
<h3>${message.name}</h3>
<p>时间:${message.created_at}</p>
<p>${message.message}</p>
<hr>
</c:forEach>
</body>
</html>
```
在此页面中,我们创建了一个表单,使用户可以输入姓名、电子邮件和留言,并将其提交到“add_message.jsp”页面。我们还使用了JSTL的“forEach”标签来循环遍历从数据库中检索到的留言,并将它们显示在页面上。
3. 创建一个JSP页面来添加新留言
接下来,我们将创建一个名为“add_message.jsp”的JSP页面,该页面将处理提交的表单并将新留言添加到数据库中。
```
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%@ page import="java.sql.*" %>
<%
// 获取表单数据
String name = request.getParameter("name");
String email = request.getParameter("email");
String message = request.getParameter("message");
// 连接MySQL数据库
String url = "jdbc:mysql://localhost:3306/message_board";
String username = "root";
String password = "password";
Class.forName("com.mysql.jdbc.Driver");
Connection conn = DriverManager.getConnection(url, username, password);
// 插入新留言
PreparedStatement stmt = conn.prepareStatement("INSERT INTO messages (name, email, message, created_at) VALUES (?, ?, ?, NOW())");
stmt.setString(1, name);
stmt.setString(2, email);
stmt.setString(3, message);
stmt.executeUpdate();
// 关闭连接
stmt.close();
conn.close();
// 重定向到留言板页面
response.sendRedirect("index.jsp");
%>
```
在此页面中,我们获取提交的表单数据,连接到MySQL数据库,并将新留言插入到“messages”表中。然后,我们关闭连接并重定向到留言板页面。
4. 测试留言板
现在,我们已经创建了留言板,可以在浏览器中运行它并测试它。在浏览器中打开“index.jsp”页面,您应该看到一个表单,可以输入姓名、电子邮件和留言。在提交表单后,您应该能够看到新留言在留言板上的列表中。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![rar](https://img-home.csdnimg.cn/images/20210720083606.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)