<span style="font-size:14px;">1-实现Servlet.Filter接口
public class AdminLoginFilter implements Filter
新建一个实现filter接口的类,实现dofilter方法,在dofilter方法里面写一个判读,比如如果用户名密码为空,则返回到登录页面
public class TestFilter implements Filter {
public void doFilter(ServletRequest srt, ServletResponse sre,
FilterChain filterChain) throws IOException, ServletException {
HttpServletRequest request = (HttpServletRequest)srt;
HttpServletResponse response = (HttpServletResponse)sre;
String name= (String)request.getSession().getAttribute("name");
if( name== null || name.trim().length() < 1) {
response.sendRedirect( "/denglu.jsp" );
}else {
filterChain.doFilter(request, response);
}
}
web.xml配置过滤器
<filter>
<filter-name>TestFilter </filter-name>
<filter-class>/test/TestFilter </filter-class>
</filter>
配置多个映射,哪些请求执行过滤器
<filter-mapping>
<filter-name>TestFilter </filter-name>
<url-pattern>/web-inf/test/*</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>TestFilter </filter-name>
<url-pattern>/login.do</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>TestFilter </filter-name>
<url-pattern>/loginin.do</url-pattern>
</filter-mapping></span>servlet拦截器代码
最新推荐文章于 2023-04-11 11:12:17 发布
本文介绍如何通过实现Servlet.Filter接口创建自定义过滤器。过滤器会在请求到达目标资源之前进行检查,例如验证用户是否已登录。如果未登录则重定向到登录页面,已登录则继续处理请求。
130

被折叠的 条评论
为什么被折叠?



