baseencodefilter.java

来自「一个关于物流的管理系统」· Java 代码 · 共 49 行

JAVA
49
字号
package com.shunshi.ssh.filter; 

import java.io.IOException; 

import javax.servlet.Filter; 
import javax.servlet.FilterChain; 
import javax.servlet.ServletConfig; 
import javax.servlet.FilterConfig; 
import javax.servlet.ServletException; 
import javax.servlet.ServletRequest; 
import javax.servlet.ServletResponse; 
import javax.servlet.http.HttpServletRequest; 

public class BaseEncodeFilter implements Filter { 
     
     private FilterConfig myFilterConfig; 
     private String targetEncoding = "GBK"; 
     
     public BaseEncodeFilter(){} 

     public void doFilter(ServletRequest servletRequest, ServletResponse servletResponse, FilterChain filterChain) throws IOException, ServletException { 
         
         String contentType = servletRequest.getContentType(); 
         if ( contentType == null || contentType.equalsIgnoreCase("application/x-www-form-urlencoded")){ 
             HttpServletRequest request = (HttpServletRequest)servletRequest; 
             request.setCharacterEncoding(targetEncoding); 
         } 
         
     
         filterChain.doFilter(servletRequest, servletResponse); 
         
     } 

     public void init(FilterConfig config) throws ServletException { 
         this.targetEncoding = config.getInitParameter("encoding"); 
     } 
     
     public void destroy() { 
     } 

     public void setFilterConfig( FilterConfig myFilterConfig ){ 
         this.myFilterConfig = myFilterConfig; 
         
     } 
     
     public FilterConfig getFilterConfig(){ 
         return myFilterConfig; 
     } 
} 

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?