⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 用过滤器解决oracle中文乱码问题.txt

📁 使用安装oracle数据库时的一些问题解决方法
💻 TXT
字号:
在web.xml中配置以下内容:

<filter>

   <filter-name>Set Character Encoding</filter-name>
   <filter-class>filter.FilterEncoding</filter-class>

   <init-param>
       <param-name>encoding</param-name>
       <param-value>GBK</param-value>
   </init-param>

</filter>

<filter-mapping>
   <filter-name>Set Character Encoding</filter-name>
    <url-pattern>/*</url-pattern>
</filter-mapping>

再新建一个filter包,把这个程序写进去, 就可以解决oracle中文乱码问题了,别的什么都不用修改……

package filter;

import java.io.IOException; 
import javax.servlet.Filter; 
import javax.servlet.FilterChain; 
import javax.servlet.FilterConfig; 
import javax.servlet.ServletException; 
import javax.servlet.ServletRequest; 
import javax.servlet.ServletResponse; 
public class FilterEncoding implements Filter 
{ 
 protected String encoding;          // 接收字符编码
 protected boolean ignore;            // 是否忽略大小写
 protected FilterConfig filterConfig; // 初始化配置

 public void init(FilterConfig filterConfig) throws ServletException 
 {
  // 从web.xml文件中读取encoding的值
  encoding = filterConfig.getInitParameter("encoding"); 
  // 从web.xml文件中读取ignore的值
  String value = filterConfig.getInitParameter("ignore"); 
  // 以下三种情况均为忽略大小写
  if(value == null) 
  { 
   ignore = true; 
  }
  else if(value.equalsIgnoreCase("yes")) 
  { 
   ignore = true; 
  } 
  else if(value.equalsIgnoreCase("true")) 
  { 
   ignore = true; 
  } 
 } 
 // doFilter方法
 public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException 
 {
  if(ignore || request.getCharacterEncoding() == null) 
  {
   // 如果为空先从web.xml中得到
   String encoding = selectEncoding(request); 
   if(encoding != null) 
   {
    // 设置字符集编码
    request.setCharacterEncoding(encoding); 
   }
  }
  // 继续执行
  chain.doFilter(request, response); 
 } 
 // 得到字符编码
 private String selectEncoding(ServletRequest request) 
 { 
  return encoding; 
 } 
 public void destroy() 
 { 
  
 } 
}

⌨️ 快捷键说明

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