退出和注销按钮都是放在top的窗口中,用
注销页面:
<td align="center" width="5%"><a href="main/exit.jsp?id=1" 注销</a></td>
<td align="center" width="5%"><a href="main/exit.jsp?id=2" 退出</a></td>
处理页面:
<body>
<%
if(session.getAttribute("username")==null||session.getAttribute("username")==""){
response.sendRedirect("../login/login.jsp");
return;
}
else {
if(request.getParameter("id").equals("1")){
session.invalidate();
out.println("<script language='javascript'>alert('确定要注销吗?');"+"window.top.location.href='../login/login.jsp';</script>");
}
// out.println("<script language='javascript'>alert('确定要退出吗?');"+"window.location.href='../login/login.jsp';</script>");
else{
session.invalidate();
out.print("<script language='javascript'>top.close();</script>");
}
}
%>
</body>
这种方法只退出top的框架,左右框架都没退出,查点资料,原理方法很简单:
解决方法1:
只要在注销页面和退出加个target="_top"就可以了
<td align="center" width="5%"><a href="main/exit.jsp?id=1" target="_top">注销</a></td>
<td align="center" width="5%"><a href="main/exit.jsp?id=2" targer="_top">退出</a></td>
这样它会先在另一个窗口跳出脚本提示!
而退出整个系统脚本上有点问题
<body>
<%
if(session.getAttribute("username")==null||session.getAttribute("username")==""){
response.sendRedirect("../login/login.jsp");
return;
}
else {
if(request.getParameter("id").equals("1")){
session.invalidate();
out.println("<script language='javascript'>alert('确定要注销吗?');"+"window.top.location.href='../login/login.jsp';</script>");
}
// out.println("<script language='javascript'>alert('确定要退出吗?');"+"window.location.href='../login/login.jsp';</script>");
else{
session.invalidate();
%>
<script language="javascript">
top.opener=null; //不过这个我暂时还不知道什么意思,应该是刷新原来的页面
top.close();
</script>
<%
}
}
%>
</body>
解决方法2:
刚问了一个网友,他给我提供的一种脚本的方法,不用提交到其他页面处理,只在本页面,很不错的 !!!
JSP退出或注销时对session等的操作 <script language="javascript">
function exit(){
window.open('../login/login.jsp','_top')
}
</script>
<input type="button" value="退出" onclick="exit();" />
分享到:
相关推荐
注销时,将session中的用户标识或登录状态设置为null,从而结束用户会话。 【JDBC】JDBC是Java访问数据库的标准接口,提供了连接数据库、执行SQL语句、处理结果集等功能。在本实例中,我们需要使用JDBC建立到数据库...
为了实现用户退出页面时自动清除Session,可以通过监听浏览器的`onbeforeunload`事件,将用户重定向到一个专门用来注销的页面(如`logout.jsp`),在这个页面中执行Session的清除操作。 ```html ...
退出登录(注销)功能相对简单: 1. 用户点击退出按钮,这将发送一个请求到`LogoutServlet`。 2. `LogoutServlet`清除session中的用户信息,以结束用户的会话。 3. Servlet然后重定向用户到登录页面或首页。 在实际...
同时,当Session结束或用户注销时,通过`valueUnbound`方法将Session从活跃列表中移除。 以下是一个简化的`HttpSessionBinding`类示例: ```java public class HttpSessionBinding implements javax.servlet....
在Web开发过程中,经常需要处理用户操作完成后自动关闭窗口或退出系统的情况。本文档将详细介绍JSP页面中实现窗口关闭与退出的不同方法及其应用场景。 #### 二、通过JavaScript关闭窗口 在JSP页面中,最常用的关闭...
总的来说,JSP和Struts应用系统中实现用户退出的完美解决方案不仅包括清除Session和Cookie,还应考虑防止缓存,以及在需要时实施跨设备/窗口的登出策略。理解这些要点,有助于构建更加安全、用户友好的Web应用。
SSH(Struts2 + Spring + Hibernate)是一个经典的Java Web开发框架,它整合了三大主流开源框架,用于构建高效、可维护的Web...通过分析和实践这些代码,可以提升对SSH框架的理解,为以后的项目开发打下坚实的基础。
6. **注销登录页面(logout.jsp)**: 用户选择注销时,该页面将清除用户的Session信息,使用户退出登录状态。 登录模块的基本工作流程如下: 1. 用户访问index.jsp,如果Cookie中有用户名和密码,用户会被自动登录。...
1. **系统用例图**:系统用例图通常用于描绘用户与系统之间的交互,展示不同用户角色(如普通用户、管理员等)能够执行的操作。在实现用户登录、注册和退出功能时,主要的用例包括“用户登录”、“新用户注册”和...
该Servlet的主要职责是在接收到用户的退出请求时执行相应的操作,具体包括但不限于清除用户会话中的相关信息以及重定向至指定页面等。 #### 三、详细实现过程 1. **修改`successLogin.jsp`页面** 在`...
该系统由多个功能模块组成,包括考生报名、考生登录、上传照片、浏览信息、修改密码、注销考试、退出登录和返回主页等。每个模块都对应着特定的操作,满足用户不同需求。 1. 考生报名:考生可以填写个人信息、选择...
在`head.jsp`中,可以检查session中是否存在`user`属性来显示相应的登录或注销链接: ```jsp (request.getSession().getAttribute("user") == null) { %> ()%>/login.jsp">登录</a> | ()%...
1. **信息展示**:前端通过JSP页面动态地将数据库中的供求信息呈现给用户,可能使用JSP内置对象如request、response、session和application来处理请求和响应。 2. **搜索功能**:用户可以输入关键词进行信息检索,...
- 管理员及以上权限的用户可以在此页面对留言进行审核或取消审核操作。 10. **注册页面(register.jsp)** - 提供用户注册功能,用户需要填写用户名、密码和昵称。 11. **注册保存页面(register_do.jsp)** - 验证...
该聊天室具备基本的用户管理功能,包括用户注册、登录、注销以及留言功能,旨在提供一个互动性强、操作简单的网络环境。 **一、用户注册** 在用户注册过程中,前端JavaScript被用来验证用户输入的信息是否为空。...
这种方法简单,可以防止未退出用户的恶意操作,但可能导致正在进行的操作因超时而需要重新登录,尤其是在长时间处理事务时。 2. **框架结构与隐藏刷新** - 另一种方式是利用iframe或者Frame持续刷新,确保用户始终...
标题中的"jsp登录系统[借鉴]"指的是使用JavaServer Pages(JSP)技术开发的一个用户登录系统,这样的系统通常包括用户注册、登录、注销等功能。描述中的内容提到了系统的各项功能和设计选择,以及数据库的创建和管理...
退出功能确保用户完成操作后安全地结束会话,这通常涉及清除会话中的用户信息,或者设置会话超时以自动注销用户。在JSP中,可以使用session对象的invalidate()方法来结束会话。 在技术实现上,MVC架构模式将业务...
在JSP页面上,用户可以选择或创建分类,服务器端的JavaBeans处理分类的增删改查操作。 ### 系统设置模块 系统设置模块包含论坛的全局配置,如管理员信息、论坛规则、版块管理等。这些设置通常保存在数据库中,...
如果存在,说明该账号已经在其他地方登录,因此需要清除原有的Session,调用`session.removeAttribute()`和`session.invalidate()`来实现注销。接着,我们将新登录的用户账号与新的Session存入`map`。 登录方法是...