学习:javaweb-servlet-Filter
关于过滤器的个人理解:
在客服端和服务器之间处理一些脏数据,无论是请求还是响应,传递数据时,无法保证一些数据是否合法,需要过滤器将数据合法化,包括一些乱码,sql注入这些问题,让数据更安全,更合法。
像乱码问题,有过滤器后,不用每一个servlet类都去解决乱码问题,只需要访问时走的是解决乱码过滤器的路径,过滤器就会解决乱码问题
代码过程:
1.创建Filter类,实现Filter接口
* 1.设置过滤器
* 2.传递request和response
//1.设置过滤器
servletRequest.setCharacterEncoding("UTF-8");
servletResponse.setCharacterEncoding("UTF-8");
servletResponse.setContentType("text/html;charset=UTF-8");
//2.传递request和response
filterChain.doFilter(servletRequest,servletResponse);

2.注册Filter类
(1).注册Filter类
<!--注册filter-->
<filter>
<filter-name>CharacterEnchodingFilter</filter-name>
<filter-class>com.pochita.filter.CharacterEnchodingFilter</filter-class>
</filter>
(2).注册Filter路径
<!--注册filter路径-->
<filter-mapping>
<filter-name>CharacterEnchodingFilter</filter-name>
<!--所有经过/servlet/的请求和响应都会被过滤器处理-->
<url-pattern>/servlet/*</url-pattern>
</filter-mapping>

3.设置sevrlet类的请求路径(如果该类需要走过滤器,那么请求路径就要符合/servlet/*)
<!--注册servlet类的路径-->
<servlet-mapping>
<servlet-name>fdemo1</servlet-name>
<url-pattern>/servlet/fdemo1</url-pattern>
</servlet-mapping>
注意:在设置filter和servlet的时候,如果filter的配置在servlet的配置下面会报错

如果反之则不报错:

 
                    
                     
                    
                 
                    
                
 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号