过滤器的使用
来源:互联网 发布:java培训机构0首付 编辑:程序博客网 时间:2024/06/08 09:14
检验是否登录
package cn.mldn.lxh.filter ;
import java.io.* ;
import javax.servlet.* ;
import javax.servlet.http.* ;
public class LoginFilter implements Filter
{
public void init(FilterConfig filterConfig)
throws ServletException
{
// System.out.println("** 过滤器初始化...") ;
}
public void doFilter(ServletRequest request,
ServletResponse response,
FilterChain chain)
throws IOException,
ServletException
{
// Session属于HTTP范畴,所以ServletRequest对象需要先转换成HttpServletRequest对象
HttpServletRequest req = (HttpServletRequest)request ;
HttpSession session = req.getSession() ;
// 如果session不为空,则可以浏览其他页面
if(session.getAttribute("uname")!=null)
{
chain.doFilter(request,response) ;
}
else
{
// 通过requestDispatcher跳转到登陆页
request.getRequestDispatcher("login.jsp").forward(request,response) ;
}
}
public void destroy()
{
// System.out.println("** 过滤器销毁...") ;
}
};
/*
<filter>
<filter-name>login</filter-name>
<filter-class>cn.mldn.lxh.filter.LoginFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>login</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
*/
中文问题
package cn.mldn.lxh.filter ;
import java.io.* ;
import javax.servlet.* ;
public class EncodingFilter implements Filter
{
public void init(FilterConfig filterConfig)
throws ServletException
{
// System.out.println("** 过滤器初始化...") ;
}
public void doFilter(ServletRequest request,
ServletResponse response,
FilterChain chain)
throws IOException,
ServletException
{
try
{
request.setCharacterEncoding("GB2312") ;
}
catch (Exception e)
{
}
chain.doFilter(request,response) ;
}
public void destroy()
{
// System.out.println("** 过滤器销毁...") ;
}
};
/*
<filter>
<filter-name>encoding</filter-name>
<filter-class>cn.mldn.lxh.filter.EncodingFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>encoding</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
*/
过滤非法字符
package cn.mldn.lxh.filter ;
import java.io.* ;
import javax.servlet.* ;
public class CharFilter implements Filter
{
public void init(FilterConfig filterConfig)
throws ServletException
{
// System.out.println("** 过滤器初始化...") ;
}
public void doFilter(ServletRequest request,
ServletResponse response,
FilterChain chain)
throws IOException,
ServletException
{
String content = request.getParameter("content") ;
// 如果indexOf返回-1则表示没有查到所要的内容
if(content!=null)
{
if(content.indexOf("AAA")==-1)
{
chain.doFilter(request,response) ;
}
else
{
System.out.println("有非法文字") ;
// 如果需要的话,此处依然可以使用RequestDispatcher进行跳转
}
}
else
{
chain.doFilter(request,response) ;
}
}
public void destroy()
{
// System.out.println("** 过滤器销毁...") ;
}
};
/*
<filter>
<filter-name>char</filter-name>
<filter-class>cn.mldn.lxh.filter.CharFilter</filter-class>
</filter>
<filter-mapping>
<filter-name>char</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
*/
- 关于过滤器的使用
- 过滤器的使用
- Filter过滤器的使用
- 过滤器的使用
- 过滤器的使用
- 过滤器的使用场合
- filter过滤器的使用
- struts 过滤器的使用
- filter过滤器的使用
- filter过滤器的使用
- 文件过滤器的使用
- [初学]过滤器的使用
- 过滤器使用的方法
- struts过滤器的使用
- jquery过滤器的使用
- servlet过滤器的使用
- 多重过滤器的使用
- servlet过滤器的使用
- 为什么样要做一个程序员
- C# 3.0 体验(1)
- TCL基础教程——(8)数组
- eclipse中设置tab size
- FCKeditor在java web程序中的使用介绍
- 过滤器的使用
- 6.20
- 史蒂夫·乔布斯(Steve Jobs)——苹果公司CEO
- asp木马探测器
- Miranda的HOOK及SERVICE机制分析
- Call for papers of ICESS-2008
- asp.net生成静态页面
- 网络游戏外挂制作
- 设计模式(七)[模板方法(Template Method)模式]