1. 我使用java web过滤器过滤jsp网页为何执行多次而且浏览器还显示不出来..
response.sendRedirect(url);相当于客户端又请求了一遍这个地址,而且又被拦截,重定向,生新请求……如此循环。
2. java servlet为什么过滤器只执行了一次
正常情况是两次,在web.xml中看你的过滤器配置是否有误,应过滤请求“/”即所有请求。
再看你的dofilter()中是否是HttpRequest和HttpResponse两个对象都有。
3. JSP中过滤器,用户登陆的时候,他过滤怎么也把Jquery也过滤一遍,然后又重新走一遍,到底是怎么
过滤器会过滤任何在浏览器中要访问的文件,像js、css和图片需要单独放到一个文件夹下,然后在过滤器中排除这个文件夹即可
4. jsp过滤器的三个方法 里面都要写些什么..
1. Servlet过滤器基础
Servlet过滤器是Servlet的一种特殊用法,主要用来完成一些通用的操作。比如编码的过滤,判断用户的登陆状态等等。Servlet过滤器的适用场合:
A.认证过滤
B.登录和审核过滤
C.图像转换过滤
D.数据压缩过滤
E.加密过滤
F.令牌过滤
G.资源访问触发事件过滤
Servlet过滤器接口的构成:
所有的Servlet过滤器类都必须实现javax.servlet.Filter接口。这个接口含有3个过滤器类必须实现的方法:
方法 说明
init(FilterConfig cfg) 这是Servlet过滤器的初始化方法,性质等同与servlet的init方法。
doFilter(ServletRequest,ServletResponse,FilterChain) 完成实际的过滤操作,当请求访问过滤器关联的URL时,Servlet容器将先调用过滤器的doFilter方法。FilterChain参数用于访问后续过滤器
destroy() Servlet容器在销毁过滤器实例前调用该方法,这个方法中可以释放Servlet过滤器占用的资源。,性质等同与servlet的destory()方法。
Servlet过滤器的创建步骤:
A.实现javax.servlet.Filter接口的servlet类
B.实现init方法,读取过滤器的初始化函数
C.实现doFilter方法,完成对请求或过滤的响应
D.调用FilterChain接口对象的doFilter方法,向后续的过滤器传递请求或响应
F.在web.xml中配置Filter
2.使用过滤器处理中文问题
当用用户登陆页面输入帐号时,如果输入是中文,后台servlet再次输出这个内容时,可能就会是乱码,这是因为serlvet中默认是以ISO-8859-1格式编码的,如果后台有多个Servlet,多个参数,这样就不合适,这个问题,我们可以通过一个过滤器统一解决,使后台的输出输出都支持中文!将ISO-8859-1转码为GBK的那段代码!
3.使用过滤器认证用户:
每个过滤器也可以配置初始化参数,可以将不需要过滤的地址配置到这个Filter的配置参数中,过滤时,如果请求地址在配置参数中,则放行,这样就避免了在程序中硬编码。每个Filter中初始化时,都可以得到配置对象,在Filter中配置二个不需要过滤的地址,一个是登陆页面,一个是执行登陆认证的servlet;
====华丽的分割线====
上面是理论知识
下面是实践写法
Filter中的三个方法其实只写doFilter方法,另外两个直接由父类实现即可。
下面给出doFilter方法覆盖例子:
public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
//执行servlet处理请求响应前需要做的代码
chain.doFilter(request, response);
//执行servlet处理请求响应后要做的代码
}
5. jsp的filter中配置验证登录的过滤器,但是在登录的时候过滤器执行了两次
<a href="#" onclick="window.loginForm.submit();"><img src="skin/images/hua02.jpg" width="78" height="27" border="0" onclick="loginForm.submit();"/></a>
看到没,你的图片本身就有个onclick="loginForm.submit();,然后又加了个超链接…专…当然会提属交两次了
6. JSP页面中怎么调用过滤器
过滤器拦截的是路径,只要把只想JSP的路径拦截了就可以了。
7. 学习jsp中过滤器遇到了问题
右击项目,重新构建一下类路径:
8. java我写了一个过滤器,所有访问的(js、jsp、各种图片等等)都会进过滤器,但是为什么.do、.action这样访
需要在web.xml文件中配置过滤器
<filter>
<filter-name>logonFilter</filter-name>
<filter-class>自己版写的权过滤器</filter-class>
</filter>
<filter-mapping>
<filter-name>logonFilter</filter-name>
<url-pattern>*.do</url-pattern>
</filter-mapping>
<filter-mapping>
<filter-name>logonFilter</filter-name>
<url-pattern>*.action</url-pattern>
</filter-mapping>
9. java 前端访问后台 , filter 过滤器用 request 跳转回index页面为什么又进了一次 doFilter
我猜到的是一种场景,你的页面里面有两个其他的资源,比如.js .css等,这俩的路由也在你的过滤器范围内,所以就也近如filter了
10. java web项目中过滤器的使用(过滤器执行多次)
图片中显示的log是执行一次的。
不是本来就打开login.jsp吗,不用再跳转到login.jsp,不是的时候,再跳转。