设为首页 加入收藏

TOP

J2EE之Filter使用实例(页面跳转)
2015-11-10 13:45:14 来源: 作者: 【 】 浏览:4
Tags:J2EE Filter 使用 实例 页面

javax.servlet.Filter类中主要有三个方法。


public void destroy();? //销毁对象
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain); //执行Filter响应的代码写在这个方法里
public void init(FilterConfig fConfig);? //初始化对象


  先建立一个web工程,建立两个JSP页面,而本文中的程序主要实现的就死利用doFilter()方法,从index1.jsp跳转到index2.jsp。


  建立好index1.jsp页面和index2.jsp。


  下面配置一下WEB.xml,配置WEB.xml中的Filter和配置Servlet一样,类名和类包,然后是映射,很简单。



? filter
? com.Filter
?

?
? filter? //应该与上面的filter-name一致
? *.action? //任何以.action结尾页面请求都可以被返回给filter
?


然后是index1.jsp页面,只需要写一个


点击此跳转致index2.jsp


  测试一下是否跳转成功即可,index2.jsp内容随便(this is my page!)。


  接下来是配置com包中Filter类中的doFilter()方法。具体代码如下:


HttpServletRequest req = (HttpServletRequest) request;
? ? ? ? String path = req.getServletPath();? //此方法只有HttpServletRequest类中有,获得页面响应的路径
? ? ? ? System.out.println(path);
? ? ? ? if("/forward.action".equals(path)){? //如果与index1.jsp中href中的地址一致则跳转index2.jsp
? ? ? ? ? ? request.getRequestDispatcher("index2.jsp").forward(request,response);
? ? ? ? }else{? ? ? ? ? ? ? ? ? ? ? ? ? ? ? //如果不一致则跳转index3.jsp页面
? ? ? ? ? ? request.getRequestDispatcher("index3.jsp").forward(request,response);
? ? ? ? }
? ? ? ?
? ? ? ? chain.doFilter(request, response);


以上。


】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇二叉链表表示的二叉树和一些基本.. 下一篇Spring Data学习笔记-Hello World

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容: