servlet过滤器简化版

xiaoxiao2021-02-27  515

什么是过滤器 在struts2 中集成了过滤器,并可以根据需要选择合适自己的过滤器进行配置 ,

过滤器:是基于函数回调的,运用java中的反射机制工作在struts2只能对于action起作用,在servlet根据需要拦截拦截器:比过滤器功能更强大,可以拦截所以client请求,以及struts2中值栈的请求

servelt实现过滤器 implement Filter 接口即可 struts2实现过滤器 extends AbstractInterceptor 并覆盖 interceptter方法

这里以标题为准 演示 servlet 拦截器的实现方法

web.xml

<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5"> <display-name>fifterDemo</display-name> <welcome-file-list> <welcome-file>index.html</welcome-file> <welcome-file>index.htm</welcome-file> <welcome-file>index.jsp</welcome-file> <welcome-file>default.html</welcome-file> <welcome-file>default.htm</welcome-file> <welcome-file>default.jsp</welcome-file> </welcome-file-list> <!-- 实现拦截器 --> <filter> <filter-name>filter</filter-name> <filter-class>fifterDemo.fifterdemo</filter-class> </filter> <!-- 拦截器映射 --> <filter-mapping> <filter-name>filter</filter-name> <url-pattern>/*</url-pattern> </filter-mapping> </web-app>

code.java

package fifterDemo; import java.io.IOException; import javax.servlet.Filter; import javax.servlet.FilterChain; import javax.servlet.RequestDispatcher; import javax.servlet.ServletException; import javax.servlet.ServletRequest; import javax.servlet.ServletResponse; /** * @author DGW * @date 2017 2017年5月3日 下午10:15:12 * @filename fifterdemo.java @TODO */ public class fifterdemo implements Filter { @Override public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException { if (request.getParameter("user").equals("")) { System.out.println("null值 已经过滤"); } RequestDispatcher dispatcher = request .getRequestDispatcher("index.jsp"); dispatcher.forward(request, response); } }

转载请注明原文地址: https://www.6miu.com/read-397.html

最新回复(0)