(一) 实现用户登录功能
1、登录页面
设计实现一个登录页面,使用表单进行提交。页面应包含的元素如图所示,注意选取适当的输入元素类型,并对其命名;表单的 action 属性设置应指向所设计的校验页面
welcome.jsp
<%@ page contentType="text/html; charset=UTF-8" language="java" %>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>主页面</title>
</head>
<body>
<%
String loggedInUser = (String) session.getAttribute("loggedInUser");
%>
<h1>欢迎,<%= loggedInUser %>!</h1>
</body>
</html>
login.jsp
<%@ page contentType="text/html; charset=UTF-8" language="java" %>
<%
String correctPassword = "123456"; // 设置正确的密码
String username = request.getParameter("username");
String password = request.getParameter("password");
if (username != null && !username.isEmpty() && password != null && password.equals(correctPassword)) {
session.setAttribute("loggedInUser", username);
response.sendRedirect("welcome.jsp"); // 重定向到欢迎页面
} else {
response.sendRedirect("start.html"); // 重定向到登录页面
}
%>
(二)实现一个简单留言板
1、留言页面
《Java Web 程序设计》 实验指导
设计实现一个留言页面,使用表单进行提交。页面应包含的元素如图所示,注意选取适当的输入元素类型,并对其命名;表单的 action 属性设置应指向所设计的添加留言页面。
2、添加留言页面
需要读取留言页面中用户输入的用户名和留言,并获取用户所使用计算机的IP 地址,按如下格式生成每条留言信息: “<用户名>@<IP 地址> 说: <留言>”。利用适当的 JSP 内置对象保存留言信息。
3、查看留言页面
在页面中显示所有留言信息,如图所示。
message_input.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
<!DOCTYPE html>
<html>
<head>
<title>留言页面</title>
</head>
<body>
<h1 align="center">留言页面</h1>
<form align="center" action="add_message.jsp" method="post">
用户: <input type="text" name="username"><br>
留言: <input type="text" name="message"><br>
<input type="submit" value="提交">
</form>
</body>
</html>
add_message.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8" %>
<%@ page import="java.net.InetAddress" %>
<%@ page import="java.util.ArrayList" %>
<%
//获取用户输入的用户名和留言
String username = request.getParameter("username");
String message = request.getParameter("message");
//获取用户IP地址
String userIP = InetAddress.getLocalHost().getHostAddress();
//构建留言信息
String formattedMessage = username + "@" + userIP + " 说:" + message;
//获取留言
ArrayList<String> messages = (ArrayList<String>) application.getAttribute("messages");
if (messages == null) {
messages = new ArrayList<String>();
application.setAttribute("messages", messages);
//将留言信息添加到留言列表
messages.add(formattedMessage);
}
%>
<!DOCTYPE html>
<html>
<head>
<title>留言列表</title>
</head>
<body>
<h1>留言列表</h1>
<ul>
<%
for (String msg : messages) {
%>
<li><%= msg %>
</li>
<%
}
%>
</ul>
</body>
</html>