jsp-Filter

简介: Filter就是过滤器,对httpRequest预处理后交给Servlet,对Servlet的httpResponse处理后返回给用户。创建一个Filter只需两个步骤:1.创建filter处理类;2.web.xml中配置Filter 或 采用注解形式。 @WebFilter 上面的例子负责拦截所有用户请求,并将请求的信息记录在日志中。 如果需要检查权限,可以在Fil
Filter就是过滤器,对httpRequest预处理后交给Servlet,对Servlet的httpResponse处理后返回给用户。

创建一个Filter只需两个步骤:1.创建filter处理类;2.web.xml中配置Filter 采用注解形式。

@WebFilter

上面的例子负责拦截所有用户请求,并将请求的信息记录在日志中。

如果需要检查权限,可以在Filter类中对用户的Session进行判断,如果没有登录,跳转到登陆页面,否则正常放行即可。


 web.xml配置

一个例子见下:
	<filter>
		<filter-name>WebServiceFilter</filter-name>
		<filter-class>com.likeyichu.webservice.filter.WebServiceFilter</filter-class>
	</filter>
	<filter-mapping>
		<filter-name>WebServiceFilter</filter-name>
		<url-pattern>/*</url-pattern>
	</filter-mapping>

例子

最简单的,维护一个访问控制列表,不在其中就返回403 Forbidden。
	public void doFilter(ServletRequest request,
		ServletResponse response, FilterChain chain)
		throws ServletException, IOException
	{
		if(!acl.contains(request.getRemoteHost())){
			HttpServletResponse resp = (HttpServletResponse) response;
			//403返回  哈哈哈
			resp.sendError(HttpServletResponse.SC_FORBIDDEN);
			return;
		}
		chain.doFilter(request, response);
	}


目录
相关文章
|
5月前
|
Java 容器
JSP 教程 之 JSP 过滤器 9
JSP和Servlet中的过滤器是Java类,能拦截请求和响应,进行信息处理。过滤器可附加到Servlet、JSP或HTML,通过`web.xml`配置。配置包括定义过滤器名称、类名、初始化参数和拦截资源。`&lt;filter&gt;`、`&lt;filter-name&gt;`、`&lt;filter-class&gt;`用于定义过滤器,`&lt;init-param&gt;`设置参数。
41 7
|
5月前
|
Java
JSP 教程 之 JSP 过滤器 5
JSP过滤器是Java类,用于动态拦截请求和响应。它们可附加到Servlet或JSP,改变或利用其中信息。示例展示了一个简单的`LogFilter`,它打印网站名称和地址。过滤器通过`doFilter`方法处理请求,然后传递给过滤链。`DisplayHeader`Servlet显示HTTP头信息,用于理解过滤器工作原理。
31 3
|
5月前
|
Java
JSP 教程 之 JSP 过滤器 4
JSP过滤器是Java类,用于动态拦截请求和响应,可附加到Servlet、JSP或HTML。`LogFilter`示例展示了基础用法,输出网站名和地址,通过实现`Filter`接口并处理`ServletRequest`和`ServletResponse`。在`doFilter`方法中,打印站点信息并继续过滤链。
26 3
|
5月前
|
XML Java 数据格式
JSP 教程 之 JSP 过滤器 6
JSP教程介绍了JSP过滤器的概念,它是Java类,能拦截请求和响应,用于处理或修改其中的信息。过滤器可连接到单个或多个Servlet、JSP及HTML页面。示例展示了一个简单的日志过滤器`LogFilter`,它打印网站名称并传递请求。`DisplayHeader`Servlet显示HTTP头信息。在`web.xml`中配置过滤器映射,如`LogFilter`映射到`/*`,影响所有Servlet。访问特定URL会触发过滤器和Servlet的执行,日志可通过Log4J记录到文件。
25 3
|
5月前
|
Java 容器
JSP 教程 之 JSP 过滤器 8
JSP教程讲解了过滤器的使用,过滤器是Java类,能动态拦截请求和响应,用于处理或修改请求/响应信息。过滤器可关联到Servlet、JSP或HTML。过滤器应用顺序由web.xml中`filter-mapping`元素排列决定,顺序反转则只需调整元素顺序。例如,通过调整`filter-mapping`,可以改变LogFilter和AuthenFilter的执行顺序。
24 2
|
5月前
|
Java
JSP 教程 之 JSP 过滤器 7
JSP教程介绍了过滤器的概念,它们是Java类,用于动态拦截请求和响应。过滤器可附加到Servlet或JSP,允许多个过滤器如AuthenFilter和LogFilter按特定顺序工作。每个过滤器有自己的映射配置,如示例所示,通过&lt;filter&gt;和&lt;filter-mapping&gt;元素定义。LogFilter和AuthenFilter都映射到&lt;url-pattern&gt;/*,实现不同功能。
17 2
|
5月前
|
XML Java 数据安全/隐私保护
JSP 教程 之 JSP 过滤器 1
JSP教程介绍了JSP过滤器,它们是Java类,用于动态拦截请求和响应。过滤器可附加到Servlet、JSP或HTML,实现请求预处理、响应后处理等功能。常见的过滤器类型包括身份验证、数据压缩、加密等。过滤器通过web.xml配置,Web容器根据配置顺序创建实例并执行。通常,过滤器配置在所有Servlet之前。
30 1
|
5月前
|
Java
JSP 教程 之 JSP 过滤器 3
JSP和Servlet中的过滤器是Java类,能拦截并处理请求和响应。它们可附加到Servlet、JSP或HTML。在`web.xml`配置文件中定义过滤器如`LogFilter`,并设置初始化参数。在Filter的`init`方法中,通过`FilterConfig`对象获取这些参数,例如打印网站名称。
23 0
|
5月前
|
XML Java 数据安全/隐私保护
JSP 教程 之 JSP 过滤器 2
JSP和Servlet中的过滤器是Java类,用于动态拦截请求和响应。它们可附加到Servlet、JSP或HTML,实现如身份验证、数据压缩、日志记录等多种功能。过滤器通过web.xml配置,按配置顺序执行,初始化时读取配置信息,doFilter方法执行实际过滤操作,FilterChain处理后续过滤器。销毁时调用destroy方法释放资源。
22 0
|
XML Java 数据安全/隐私保护
JSP 过滤器
JSP 过滤器
74 0