好的,下面是一个使用JSP编写的简单留言簿示例。这个示例包括前端页面和后端处理逻辑。
JSP(JavaServer Pages) 是一种用于创建动态Web内容的技术。它允许开发者在HTML页面中嵌入Java代码,从而实现动态内容的生成和处理。
首先,需要在数据库中创建一个表来存储留言信息。假设使用MySQL数据库:
CREATE TABLE messages (
id INT AUTO_INCREMENT PRIMARY KEY,
name VARCHAR(100),
message TEXT,
date TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);
index.jsp(留言簿主页面)
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<head>
<title>留言簿</title>
</head>
<body>
<h1>欢迎来到留言簿</h1>
<form action="submit_message.jsp" method="post">
姓名: <input type="text" name="name"><br><br>
留言: <textarea name="message" rows="4" cols="50"></textarea><br><br>
<input type="submit" value="提交">
</form>
<h2>留言列表</h2>
<%
// 连接数据库并获取留言列表
String url = "jdbc:mysql://localhost:3306/your_database";
String user = "your_username";
String password = "your_password";
try (Connection conn = DriverManager.getConnection(url, user, password)) {
String sql = "SELECT * FROM messages ORDER BY date DESC";
try (Statement stmt = conn.createStatement();
ResultSet rs = stmt.executeQuery(sql)) {
while (rs.next()) {
out.println("<p><strong>" + rs.getString("name") + "</strong> (" +
rs.getTimestamp("date") + "): " + rs.getString("message") + "</p>");
}
}
} catch (Exception e) {
out.println("<p style='color:red;'>数据库连接错误: " + e.getMessage() + "</p>");
}
%>
</body>
</html>
submit_message.jsp(处理留言提交的页面)
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<%
String name = request.getParameter("name");
String message = request.getParameter("message");
if (name != null && !name.isEmpty() && message != null && !message.isEmpty()) {
// 连接数据库并插入留言
String url = "jdbc:mysql://localhost:3306/your_database";
String user = "your_username";
String password = "your_password";
try (Connection conn = DriverManager.getConnection(url, user, password)) {
String sql = "INSERT INTO messages (name, message) VALUES (?, ?)";
try (PreparedStatement pstmt = conn.prepareStatement(sql)) {
pstmt.setString(1, name);
pstmt.setString(2, message);
pstmt.executeUpdate();
}
} catch (Exception e) {
out.println("<p style='color:red;'>数据库插入错误: " + e.getMessage() + "</p>");
}
}
response.sendRedirect("index.jsp");
%>
PreparedStatement
)来防止SQL注入。response.sendRedirect("index.jsp")
)来避免重复提交。希望这个示例能帮助你理解如何使用JSP编写一个简单的留言簿。如果有更多问题,欢迎继续提问!
TC-Day
TC-Day
Techo Day
Elastic 实战工作坊
Elastic 实战工作坊
微搭低代码直播互动专栏
DB TALK 技术分享会
微搭低代码系列直播课
微搭低代码直播互动专栏
微搭低代码直播互动专栏
微搭低代码直播互动专栏
领取专属 10元无门槛券
手把手带您无忧上云