帮我写一个基于jsp的留言本
时间: 2023-08-28 21:26:31 浏览: 96
好的,我可以给您提供一个基于 JSP 的留言本的代码示例。请注意,这只是一个简单的示例,您需要根据自己的需求进行修改和调整。
1. 首先创建一个名为 "messages.jsp" 的 JSP 页面,并添加以下代码:
```
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>留言本</title>
</head>
<body>
<h1>留言板</h1>
<form action="addMessage.jsp" method="post">
<p>
<label>姓名:</label>
<input type="text" name="name" required>
</p>
<p>
<label>电子邮件:</label>
<input type="email" name="email" required>
</p>
<p>
<label>留言内容:</label>
<textarea name="content" cols="50" rows="5" required></textarea>
</p>
<p>
<input type="submit" value="发布留言">
</p>
</form>
<hr>
<h2>留言列表</h2>
<%
// 连接数据库,查询留言列表
try {
Class.forName("com.mysql.jdbc.Driver");
Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/test", "root", "123456");
Statement stmt = conn.createStatement();
String sql = "SELECT * FROM message ORDER BY id DESC";
ResultSet rs = stmt.executeQuery(sql);
// 遍历结果集,输出留言列表
while (rs.next()) {
out.println("<p><strong>" + rs.getString("name") + "</strong>(" + rs.getString("email") + "):" + rs.getString("content") + "</p>");
}
// 关闭连接
rs.close();
stmt.close();
conn.close();
} catch (Exception e) {
e.printStackTrace();
}
%>
</body>
</html>
```
2. 创建一个名为 "addMessage.jsp" 的 JSP 页面,用于处理添加留言的请求,并将留言存储到数据库中。添加以下代码:
```
<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<%@ page import="java.sql.*" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>添加留言</title>
</head>
<body>
<%
// 获取表单数据
String name = request.getParameter("name");
String email = request.getParameter("email");
String content = request.getParameter("content");
// 连接数据库,添加留言
try {
Class.forName("com.mysql.jdbc.Driver");
Connection conn = DriverManager.getConnection("jdbc:mysql://localhost:3306/test", "root", "123456");
String sql = "INSERT INTO message(name, email, content) VALUES (?, ?, ?)";
PreparedStatement pstmt = conn.prepareStatement(sql);
pstmt.setString(1, name);
pstmt.setString(2, email);
pstmt.setString(3, content);
pstmt.executeUpdate();
// 关闭连接
pstmt.close();
conn.close();
} catch (Exception e) {
e.printStackTrace();
}
// 跳转回留言列表页面
response.sendRedirect("messages.jsp");
%>
</body>
</html>
```
3. 创建一个名为 "message.sql" 的 SQL 脚本文件,并添加以下代码:
```
CREATE TABLE message (
id INT PRIMARY KEY AUTO_INCREMENT,
name VARCHAR(50) NOT NULL,
email VARCHAR(50) NOT NULL,
content TEXT NOT NULL,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
```
4. 在本地 MySQL 数据库中执行 "message.sql" 脚本,创建一个名为 "test" 的数据库和一个名为 "message" 的数据表。
5. 部署应用程序到 Tomcat 服务器,并访问 "messages.jsp" 页面,即可看到留言列表和添加留言的表单。
以上就是一个简单的基于 JSP 的留言本的示例代码。请注意,这只是一个示例,您需要根据自己的需求进行修改和调整。
阅读全文