在使用 JSP 和 Servlet 在 Java 中实现的 Web 应用程序中; 如果我在用户会话中存储信息,这些信息将从同一个浏览器的所有选项卡中共享。如何在浏览器选项卡中区分会话? 在这个例子中:
<%@page language="java"%>
<%
String user = request.getParameter("user");
user = (user == null ? (String)session.getAttribute("SESSIONS_USER") : user);
session.setAttribute("SESSIONS_USER",user);
%>
<html><head></head><body>
<%=user %>
<form method="post">
User:<input name="user" value="">
<input type="submit" value="send">
</form>
</body></html>
将这段代码复制到一个 jsp 页面(testpage.jsp
) ,将这个文件部署到服务器上一个 Web 应用程序的现有上下文中(我使用 Apache Tomcat) ,然后使用正确的 URL (localhost/context1/testpage.jsp
)打开一个浏览器(FF、 IE7或 Opera) ,在输入中键入你的名字并提交表单。然后在同一个浏览器中打开一个新的选项卡,然后您可以在新的选项卡上看到您的名字(从会话中获取)。小心浏览器-缓存,有时似乎没有发生,但它在缓存中,刷新第二个标签。
谢谢。