- 浏览: 333664 次
- 性别:
- 来自: 北京
文章分类
最新评论
-
y_715:
document.getElementById("e ...
JSTL EC TABLE extremeTable 学习 -
wangyj0898:
学习了。。。
display table 标签用法 -
hejiajie2008:
没有图啊
图解myeclipse把maven普通java项目变成web项目的全程操作 -
zhangyu_2100:
[align=center][/align][color=br ...
request.getRealPath()的替代方法 -
senhui19:
LZ写的真不错呀,现在开发中都经常是用DetachedCrit ...
Hibernate的Criteria用法总结
配置过滤器,通过mapping的url-pattern将访问页面截住,通过import javax.servlet.Filter来进行一些校验处理,
,实现innt(),doFilter(),destory()然后转向页面
代码:
public class AccessFilter extends HttpServlet implements Filter {
private FilterConfig filterConfig; //Handle the passed-in FilterConfig
private String loginPage;
private String[] pageBeforeLogin;
private final String[] DEFAULT_LOGIN_PAGE={"/login.jsp"};
/**
* 获取InitParameter
* 登录页、不用登录就可以访问的页
* @param filterConfig FilterConfig
* @throws ServletException
*/
public void init(FilterConfig filterConfig) throws ServletException {
this.filterConfig = filterConfig;
try
{
loginPage=filterConfig.getInitParameter("loginPage");
}
catch(java.lang.Exception e)
{
loginPage=DEFAULT_LOGIN_PAGE[0];
}
try
{
pageBeforeLogin=(loginPage + "," + filterConfig.getInitParameter("pageBeforeLogin")).split(",");
}
catch(Exception e)
{
}
}
//Process the request/response pair
public void doFilter(ServletRequest request, ServletResponse response, FilterChain filterChain) {
HttpServletRequest req=(HttpServletRequest) request;
HttpServletResponse res=(HttpServletResponse) response;
//先判断是否已经登录
HttpSession session= req.getSession();
if(session!=null&&session.getAttribute(SystemGlobals.LOGINUSERID)!=null){
doNext(request, response, filterChain);
return;
}
//clientRequest 记录真正的被请求的 URL 比如 /index.jsp;/login.jsp;/
String clientRequest = req.getServletPath();
System.out.println(clientRequest);
for (int i=0;i<pageBeforeLogin.length;i++)
{
if (pageBeforeLogin[i].equalsIgnoreCase(clientRequest))
{
doNext(request,response,filterChain);
return;
}
}
//运行到此处说明必须转到登录界面
try
{
//RequestDispatcher rd = this.filterConfig.getServletContext().getRequestDispatcher(loginPage); // req.getRequestDispatcher(loginPage);
//rd.forward(request, res);
res.sendRedirect(req.getContextPath()+ loginPage);
return;
}
catch(Exception e)
{
e.printStackTrace();
}
}
private void doNext(ServletRequest request, ServletResponse response, FilterChain filterChain)
{
try {
filterChain.doFilter(request, response);
}
catch(ServletException sx) {
filterConfig.getServletContext().log(sx.getMessage());
}
catch(IOException iox) {
filterConfig.getServletContext().log(iox.getMessage());
}
}
//Clean up resources
public void destroy() {
}
}
web.xml配置:
<filter>
<filter-name>sessionloginchecker</filter-name>
<filter-class>com.itsv.chy.system.permission.AccessFilter</filter-class>
<init-param>
<param-name>loginPage</param-name>
<param-value>/system/login.jsp</param-value>
</init-param>
<init-param>
<param-name>pageBeforeLogin</param-name>
<param-value>/login.do,/logout.do</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>sessionloginchecker</filter-name>
<url-pattern>index.jsp</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>sessionloginchecker</filter-name>
<url-pattern>/accessAction.do</url-pattern>
</filter-mapping>
发表评论
-
java.lang.NoClassDefFoundError: javax/el/ELException
2010-09-06 01:07 2600在maven中配置以下依赖: <depe ... -
关于div的隐藏
2009-12-28 12:01 1074div的visibility可以控制div的显示和隐藏,但是隐 ... -
request.getRealPath()的替代方法
2009-08-25 15:26 2875替代方法是: 写道 request.getSession( ... -
JSP注释详解(新手必看)
2009-07-03 14:14 1441在客户端显示一个注释. JSP 语法<!-- comme ... -
把JSP放到WEB-INF后以保护JSP源代码
2008-12-15 10:58 1607本人在看《J2EE核心模式》(“Core J2ee Patte ... -
struts配置文件中<forward>标签的redirect属性
2008-12-02 20:47 2389struts-config.xml中有这样 ... -
STRUTS中ec标签的用法
2008-11-25 16:41 25181.<ec:table items="pres ... -
JSP生成彩色验证码
2008-06-28 09:47 1248程序代码image.jsp<%@ page conten ... -
对表单输入的数据做校验
2008-05-23 20:11 1220对表单输入的数据做校验 在struts中带有了Jakarta ... -
活学活用 Struts (转)
2008-04-11 16:02 15481.概述 Struts大家都很熟悉,不再详细介绍,另 ... -
newValue
2008-03-17 13:14 1399public List getAllList(String x ... -
web开发设计displaytag应用指南
2008-03-10 15:26 1506DisplayTag是一个非常好用的表格显示标签,适合MVC模 ... -
display table 标签用法
2008-03-10 15:25 5663在web.xml下添加一个filter <filte ... -
jstl之foreach循环
2008-03-10 15:04 1580<%@ page contentType="t ... -
JSTL1.1函数标签库(functions)如fn:length
2008-03-10 15:02 14407在jstl中的fn标签也是我 ... -
JSP Struts之HTML标签库详解
2008-03-10 15:00 1885Struts提供了五个标签库,即:HTML、Bean、Logi ... -
web.xml详解
2008-03-10 14:51 5521web.xml元素介绍 每一个站的WEB-INF下都有一个we ... -
Struts配置文件详解(3)
2008-03-10 14:50 1290<?xml version="1.0" ... -
Struts配置文件详解(2)
2008-03-10 14:49 1810关于 Struts中 struts-config.xml文件的 ... -
Struts配置文件详解(1)
2008-03-10 14:49 1296Struts应用采用两个基于X ...
相关推荐
### Struts2配置过滤器详解 #### 一、概述 Struts2是基于MVC模式的一个开源框架,它能够帮助开发者构建出结构清晰且易于维护的Web应用。在实际开发过程中,为了实现某些功能(例如用户认证、权限控制等),往往...
### Java中配置过滤器 在Java Web开发中,过滤器(Filter)是一种非常重要的机制,它可以在请求到达目标资源之前或响应返回客户端之后执行特定的操作。例如,可以使用过滤器来实现统一的编码设置、安全控制、日志...
下面我们将深入探讨Java中的乱码问题,以及如何通过配置过滤器来解决这个问题。 首先,我们要理解Java乱码的根源。乱码通常出现在两个主要场景:输入(如POST表单数据)和输出(如JSP页面显示)。在Java Web应用中...
解决前后端跨域,java后端配置过滤器
在 web.xml 文件中配置过滤器 在 Java Servlet 编程中,过滤器是一个非常重要的概念,它允许开发者截取和修改进入一个 Servlet 或 JSP 页面的请求或从一个 Servlet 或 JSP 页面发出的响应。在 web.xml 文件中配置...
### Servlet配置过滤器Filter知识点详解 #### 一、概述 在Java Web开发中,`Servlet`过滤器(`Filter`)是一种重要的技术组件,它可以在请求到达目标资源(如Servlet或JSP页面)之前或者响应返回客户端之前进行...
STM32 CAN 过滤器滤波器配置详解 在嵌入式系统中,CAN(Controller Area Network)总线是常见的通信协议之一。...在实际应用中,需要根据自己的实际需要配置过滤器,以确保正确地接收和发送数据帧。
Springboot配置过滤器实现过程解析 本文主要介绍了Springboot配置过滤器的实现过程解析,通过示例代码详细介绍了过滤器的实现细节,对大家的学习或者工作具有一定的参考学习价值。 Springboot配置过滤器的基础概念...
FilterChainProxy会按顺序来调用这些filter,使这些filter能享用Spring Ioc的功能, CONVERT_URL_TO_LOWERCASE_BEFORE_COMPARISON 定义url比较前先转为小写 PATTERN_TYPE_APACHE_ANT 定义使用Apache ant的匹配模式
总结,通过在`web.xml`中正确配置过滤器,我们可以实现对所有JSP请求的统一处理,这在诸如安全控制、性能优化、数据校验等方面具有广泛应用。同时,灵活地利用过滤器配置和初始化参数,可以满足不同场景的需求,提升...
Servlet过滤器是Java Web开发中的一个重要组件,它允许开发者在请求到达...在学习和使用过程中,一定要深入理解Filter接口的方法和生命周期,以及如何在web.xml中正确配置过滤器,这样可以更有效地利用这一强大工具。
Java Servlet过滤器是Java Web应用程序中的重要组件,它在请求被...理解并熟练配置过滤器对于提升Web应用的质量和性能至关重要。在实践中,结合`web.xml`和自定义过滤器类,我们可以构建出强大且灵活的应用架构。
在初始化阶段,可以根据需求激活和配置过滤器,未激活的过滤器不会参与报文筛选。每个FIFO至少需要激活一个过滤器才能正常接收数据。若不打算使用复杂的过滤功能,可以仅激活一组过滤器组,设置为32位屏蔽位模式,...
3. **配置过滤器**:在`web.xml`文件中定义一个过滤器,例如: ```xml <filter-name>EncodingFilter <filter-class>com.example.filter.EncodingFilter</filter-class> <filter-name>EncodingFilter ...
6. **配置过滤器**:在`web.xml`文件中配置过滤器,指定其过滤范围、初始化参数以及过滤器链的顺序。 7. **Filter的性能优化**:合理设计过滤器链和优化过滤器的处理效率是提高系统性能的关键。避免过度的内存消耗...
### XML常用配置信息详解:过滤器、监听器与Session会话闲置时间 #### 一、XML配置基础 在Java Web开发中,`web.xml`是一个非常重要的配置文件,它主要用于定义Web应用程序的基本结构和行为。该文件是用XML(可...
同时,合理配置过滤器的执行顺序,避免出现权限检查的遗漏或冗余。 总结起来,【HRMS】SSH整合配置文件,做权限设置的过滤器代码涉及到的知识点包括Struts2的拦截器、Spring的bean管理和安全框架、Hibernate的数据...
在`web.xml`文件中,通过`<filter>`和`<filter-mapping>`元素来配置过滤器。`<filter>`定义过滤器类,`<filter-mapping>`则指定过滤器应该拦截哪些URL或者Servlet。 ```xml <filter-name>MyFilter ...
`Filter创建.exe`可能是一个用于创建过滤器实例或者配置过滤器的工具,而`说明.txt`可能包含了关于如何使用这个工具或者过滤器的详细步骤和注意事项。 过滤器还可以与其他框架集成,比如Spring MVC中的Filter,可以...
从Java Servlet 3.0版本开始,我们还可以使用注解的方式来配置过滤器,无需在web.xml中手动配置,使得代码更加简洁。 通过了解和熟练运用JAVA Web中的过滤器,开发者可以更高效地管理和控制Web应用的输入和输出,...