您的位置:首页 > Web前端 > JavaScript

JSP学习笔记——过滤器(二)使用

2009-05-07 09:15 435 查看
过滤器的使用:

1. 过滤非法文字

package demo.filter ;

import java.io.* ;

import javax.servlet.* ;

import javax.servlet.http.* ;

public class CharFilter implements Filter

{

public void init(FilterConfig filterConfig)throws ServletException

{

System.out.println("**Filter初始化……") ;

}

public void doFilter(ServletRequest request,ServletResponse response,FilterChain chain)

throws java.io.IOException,ServletException
{

request.setCharacterEncoding("gbk") ;

String name = request.getParameter("name") ;

if(name!=null){

if(name.indexOf("猪猪")==-1){

chain.doFilter(request,response) ;

}else{

System.out.println("非法字符!") ;

}

}else{

System.out.println("feikong") ;

chain.doFilter(request,response) ;

}

}

public void destroy(){}

}

2. 对内容进行统一编码

package demo.filter ;

import java.io.* ;

import javax.servlet.* ;

import javax.servlet.http.* ;

public class EncodingFilter implements Filter

{

public void init(FilterConfig filterConfig)throws ServletException

{}

public void doFilter(ServletRequest request,ServletResponse response,FilterChain chain)

throws java.io.IOException,ServletException
{

try

{

request.setCharacterEncoding("gb2312") ;

}

catch (Exception e) {}

chain.doFilter(request,response) ;

}

public void destroy()

{}

}

3. 登录验证

package demo.filter ;

import java.io.* ;

import javax.servlet.* ;

import javax.servlet.http.* ;

public class SessionFilter implements Filter

{

public void init(FilterConfig filterConfig)throws ServletException

{}

public void doFilter(ServletRequest request,ServletResponse response,FilterChain chain)

throws java.io.IOException,ServletException
{

HttpServletRequest req = (HttpServletRequest)request ;

HttpServletResponse res = (HttpServletResponse)response ;

HttpSession session = req.getSession() ;

System.out.println(session.getAttribute("name")) ;

if (session.getAttribute("name")!=null)

{

//System.out.println("已登录……") ;

chain.doFilter(request,response) ;

}else{

//System.out.println("未登录……") ;

request.getRequestDispatcher("login.jsp").forward(request,response) ;

}

}

public void destroy()

{}

}

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: