jsp---Filter的使用
来源:互联网 发布:mac翻墙全局代理 编辑:程序博客网 时间:2024/06/10 22:37
struts2中的拦截器可以拦截action,但是无法拦截页面的请求,但是有些页面需要有权限才可以访问,不可以直接访问,有一种解决的办法就是使用Filter
1、创建Filter类,需要实现Filter接口:
package filter;import java.io.IOException;import java.util.Map;import javax.servlet.Filter;import javax.servlet.FilterChain;import javax.servlet.FilterConfig;import javax.servlet.ServletException;import javax.servlet.ServletRequest;import javax.servlet.ServletResponse;import javax.servlet.http.HttpServlet;import javax.servlet.http.HttpServletRequest;import javax.servlet.http.HttpServletResponse;import javax.servlet.http.HttpSession;import model.Admin;public class LoginFilter implements Filter {//private Map session;public void destroy() {}public void doFilter(ServletRequest req, ServletResponse resp,FilterChain chain) throws IOException, ServletException {HttpServletRequest request = (HttpServletRequest) req;HttpServletResponse response = (HttpServletResponse) resp;HttpSession session = request.getSession();Admin admin = (Admin) session.getAttribute("nowUser");System.out.println(admin);if(admin == null){response.sendRedirect("login.html");}chain.doFilter(request, response);}public void init(FilterConfig arg0) throws ServletException {}}
在doFilter中实现过滤功能,这里主要是验证用户请求index.html页面时是否登录,如果登录则继续运行,否则返回到登录页面
还需要配置web.xml:添加下面的代码
<filter> <filter-name>loginFilter</filter-name> <filter-class>filter.LoginFilter</filter-class> </filter> <filter-mapping> <filter-name>loginFilter</filter-name> <url-pattern>/index.html</url-pattern> </filter-mapping>
1、过滤所有的请求:
<filter-mapping> <filter-name>filter</filter-name> <url-pattern>/*</url-pattern></filter-mapping>
2、过滤制定类型的请求:只过滤“.html”的文件
filter-mapping> <filter-name>filter</filter-name> <url-pattern>*.html</url-pattern></filter-mapping>
3、过滤多种类型的:需要配置两个<filter-mapping>
<filter-mapping> <filter-name>filter</filter-name> <url-pattern>*.html</url-pattern></filter-mapping><filter-mapping> <filter-name>filter</filter-name> <url-pattern>*.jsp</url-pattern></filter-mapping>
4、过滤指定文件:就是刚才的情况,注意加“/”
<filter-mapping> <filter-name>loginFilter</filter-name> <url-pattern>/index.html</url-pattern> </filter-mapping>
- jsp---Filter的使用
- JSP中Filter的使用
- Jsp学习——filter的使用
- jsp关于过滤器filter的使用。
- Jsp学习——filter的使用
- jsp中Filter的介绍及使用
- Jsp学习——filter的使用
- jsp的Filter
- 使用filter(过滤器)处理JSP和servlet的中文乱码
- 使用filter解决jsp乱码问题
- JSP乱码解决 - 使用过滤器Filter
- Jsp学习5-filter过滤器使用详解
- jsp filter
- JSP Filter
- JSP Filter
- JSP -Filter
- Filter过滤器的使用
- filter过滤器的使用
- 超实用的8个Linux命令行性能监测工具
- JS closures
- Java VisualVM -- JDK自带的强大性能监测工具
- Makefile
- iOS 书翻页效果
- jsp---Filter的使用
- JSP错误处理
- 2013年全国硕士研究生入学统一考试英语(一)和(二)考试大纲新增的60个词汇详解
- jenkins插件开发
- linux vmstat\iostat\sar命令详解
- WEB分页原理
- Linux中Top命令结果的各项含义
- js 文件获取表单并提交
- 页面重定向