首页 > 编程知识 正文

java拦截器跳转页面,java拦截器响应

时间:2023-05-05 04:41:05 阅读:37082 作者:4654

一、前言

这是一篇关于java拦截器的文章,是我在编写java web时遇到的问题。 我们写网站的时候,要进入这个系统就必须通过登录页面。 那么,我必须写一个java拦截器。 任何已登录并进入系统的用户都可以访问任何文件或jsp页面。 如果非登录接口是想访问系统或者想做什么的用户,我们不允许他访问我们的系统。 这就是拦截器的功能。

二、代码实现

要实现这一功能,必须编写一个继承名为Fliter的类的类。 这里强调一下,我的这个班是在com.wz.common上创建的。 具体的代码实现如下:

packagecom.wz.common; importjava.io.IOException; 导入javax.servlet.filter; 导入javax.servlet.filter chain; 导入javax.servlet.filter config; 导入javax.servlet.servlet exception; 导入javax.servlet.servlet request; 导入javax.servlet.servlet response; import javax.servlet.http.http servlet请求; import javax.servlet.http.http无servlet保罗; 导入javax.servlet.http.http session; publicclassloginfilterimplementsfilter {

@ override公共void destroy () {//todo auto-generated method stub

}

@ overridepublicvoiddofilter (servletrequestrequest,ServletResponse response,FilterChain chain ) throwsIOException,servle

httpservletrequestservletrequest=(http servlet请求)请求;

httpservletresponseservletresponse=(http servlet响应)响应;

http会话会话=servlet request.getsession (; //获取请求的URL

string path=servlet request.getrequest uri (; //输出看看路径

system.out.println('path下一个路径' path );

stringid=(string ) session.getattribute('id ); //登录页面不需要过滤

if(path.indexof(/login.JSP )-1 ) {

chain.dofilter(servletrequest,servletResponse; 返回;

//如果没有员工的信息,则判断为跳至登录页

if(id==null ) {

servlet response.sendredirect (' ./log in.JSP ' );

}else{

chain.dofilter(servletrequest,servletResponse;

}

}

@ overridepublicvoidinit (filter configarg0) throwsservletexception (/todo auto-generatedmethodstub

}

}

三. web.xml配置

代码已实现。 需要此web.xml实现配置。 需要阻止的文件夹如下图所示。 因为在Admin下,所以我想阻止文件夹。

web.xml的文件配置代码如下:

login

com.wz.common.LoginFilter

login

/Admin/*

四.个人总结

学习新事物,我们只要静下心来,做百度以上就行了。 感受一直在学习的自己!

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。