<%@ page language="java" contentType="text/html; charset=UTF-8"
pageEncoding="UTF-8"%>
<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Session 测试</title>
</head>
<body>
<form method="post" name="form">
<table>
<tr>
<td>
输入留言:<input type="text" name="user">
</td>
</tr>
<tr>
<td>
<input type="submit" value="提交">
</td>
</tr>
</table>
</form>
<%
// 获取用户输入
String user = request.getParameter("user");
// 获取之前的留言
String previousMessages = (String) application.getAttribute("messages");
if (previousMessages == null) {
previousMessages = ""; // 初始化为空
}
// 如果用户输入不为空,添加到之前的留言
if (user != null && !user.trim().isEmpty()) {
// 添加标记
String markedMessage = "one: " + user;
// 添加换行
if (!previousMessages.isEmpty()) {
previousMessages += "<br>";
}
// 追加新留言
previousMessages += markedMessage;
}
// 保存更新后的留言到 application 范围
application.setAttribute("messages", previousMessages);
%>
<h3>留言记录:</h3>
<%= application.getAttribute("messages") %>
</body>
</html>
两个jsp代码都一样,只是添加标记那里更改一下就可以
application刷新网页或者关闭浏览器都不会消失,只有重启后或者通过application.removeAttribute(“变量名称”)才可以清除记录。
存储的是一个字符串,输入新字符串时将其和就字符串拼接在一起,形成一个字符串来存储。