public void doFilter(ServletRequest request, ServletResponse response,
FilterChain chain) throws IOException, ServletException {
HttpServletRequest hreq = (HttpServletRequest)request;
HttpServletResponse hres = (HttpServletResponse)response;
String result = "/Kindergarden/starsheaven37/login.jsp";
RequestDispatcher rd = null;
String errormessage= config.getInitParameter("errormessage");
HttpSession session = hreq.getSession();
if (session.getAttribute("PerName") == null) {
rd = hreq.getRequestDispatcher(result);
request.setAttribute("errormessage",errormessage);
//System.out.println("UserFilter 过滤器中");
//System.out.println("对不起您还没登陆,请您先登陆!");
//hres.sendRedirect(result);
//rd.forward(request, response);
//如果采取FORWARD或者是sendRedirect的方法,只能跳转到子窗口中
PrintWriter out = hres.getWriter();
out.println("<script type='text/javascript'>window.parent.location='"+result+"'</script>");
}
else
{
chain.doFilter(request, response);
}
}
分享到:
相关推荐
综上所述,通过使用过滤器来处理session过期后的重定向,并结合JavaScript来控制iframe框架的跳出和页面的刷新,可以有效地解决JSP应用中的会话管理和页面布局问题。这不仅可以提升系统的安全性,同时也能改善用户...
以上代码片段展示了如何通过过滤器实现Session过期后的自动跳转。这种方式更加灵活,可以直接控制HTTP响应,确保用户在Session过期后能够被正确地引导回登录页面,重新验证其身份。在实际应用中,还需要考虑其他因素...
3. **异常过滤器(Exception Filters)**:在ASP.NET MVC或ASP.NET Core中,可以使用异常过滤器来捕获控制器或操作方法中抛出的异常。这些过滤器可以在执行动作之前或之后运行,提供了一种集中处理异常的方式。 4. ...
10. **JSP页面**:`demojsp`和`jsp`目录中的文件可能包含了一些示例的登录、权限展示的JSP页面,Shiro可以配合这些页面实现用户界面的交互。 11. **运行与测试**:`mvnw`或`mvnw.cmd`是Maven的Windows命令行脚本,...
7. **Struts、SpringMVC或自定义框架**:尽管描述中没有提及具体的技术栈,但考虑到项目规模,可能使用了如Struts、SpringMVC这样的MVC框架,或者自定义的轻量级框架,以提高开发效率和代码规范性。 8. **EJB...
本章可能讲述了session对象的创建、管理、失效以及cookie与session的区别和使用场景。 17.14章节可能关注了过滤器(Filter)的概念。过滤器是Java Web的一个强大特性,可以在请求被Servlet处理之前或之后执行预处理...
JavaWeb技术是IT领域中广泛使用的技能之一,主要用于构建基于Web的应用程序。它结合了Java语言的强类型和跨平台特性,以及Web开发的各种组件,如Servlets、JSP(JavaServer Pages)和JSTL(JavaServer Pages ...
AdvancedDataGrid是Flex框架中一种高级的数据网格控件,它提供了比标准DataGrid更多的功能,如分组、排序、过滤、多列排序等。实现全选和多选功能,通常需要通过监听AdvancedDataGrid的itemClick事件,并在事件...
- **session超时**:考虑session过期处理,如设置session失效时间,过期后重定向至登录页面。 9. **安全注意事项** - **密码加密**:在存储和比较密码时,应先进行加密,防止明文传输和存储带来的风险。 - **...
此外,还会涉及部署描述符(web.xml)的配置,这是配置Servlet和过滤器的关键文件。 第11章则可能涉及JSP(JavaServer Pages)技术。JSP是Java Web开发中的视图层组件,允许开发者在HTML页面中嵌入Java代码,实现...
Listener则是监听特定事件的对象,例如Session监听器可监控会话的创建、失效等事件。 7. **JDBC(Java Database Connectivity)**: JDBC是Java平台的标准API,用于连接Java应用程序和各种类型的数据库。通过JDBC,...
在JavaWeb中,实现i18n通常通过使用资源包(Properties文件)来存储不同语言的文本内容。开发者可以创建不同的`.properties`文件,如`messages_en.properties`(英语)和`messages_zh_CN.properties`(简体中文),...
7. **过滤器(Filter)**:利用Filter接口拦截请求和响应,实现权限控制、日志记录等功能。 8. **监听器(Listener)**:通过实现ServletContextListener、HttpSessionListener等接口,监听Web应用的生命周期事件和...
- **示例**:如果一个Web应用的某个页面URL中包含了数据库密钥或其他敏感信息,攻击者可以直接修改URL中的参数来访问不应公开的数据。 - **A5 - 安全配置错误(Security Misconfiguration)** - **定义**:良好的...
修改成功,提示请重新登录,自动退出并跳往登录页,保证session失效 (12)访问权限控制: 1.增加过滤器. 登录页面可直接访问. 如果访问不是登录地址,则根据session判断是否登录. 如果已经登录,核心页面直接显示...
- 例如,可以使用过滤器来检查用户的身份验证状态或添加HTTP响应头。 **改变默认的IncludedForwardedSession范围:** - 默认情况下,当使用include或forward方法时,会使用默认的Session范围。 - 但在某些情况下,...
其实就是把原web.xml中的最后的过滤器代码移到最顶端就可以了.具体查看代码) 更多内容可以关注我新建立的博客:http://blog.csdn.net/wuxinfengjing<br>我也是初学拉.就只是为了大家共同进步. <br> <br>原...
2、优化减少过滤器中的sql查询语句 3、优化减少版块帖子列表sql查询语句 4、优化个人空间 5、优化验证问答 6、优化快速编辑帖子的提交方式和帖子附件下载次数 7、优化搜索的排序方式 8、升级优化序列化类 9...
2、优化减少过滤器中的sql查询语句 3、优化减少版块帖子列表sql查询语句 4、优化个人空间 5、优化验证问答 6、优化快速编辑帖子的提交方式和帖子附件下载次数 7、优化搜索的排序方式 8、升级优化序列化类 9...