`
jinyanhui2008
  • 浏览: 318440 次
  • 性别: Icon_minigender_1
  • 来自: 青岛
社区版块
存档分类
最新评论

完美解决中文乱码的问题

    博客分类:
  • Java
阅读更多

1 借助spring

web.xml中增加

<filter>   
<filter-name>Set Character Encoding</filter-name>   
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>   
<init-param>   
    <param-name>encoding</param-name>   
    <param-value>utf8</param-value>   
</init-param>   
</filter>   
<filter-mapping>   
    <filter-name>Set Character Encoding</filter-name>   
    <url-pattern>/*</url-pattern>   
</filter-mapping>

 

配置文件即可,如果不用spring怎么办呢?有办法啊

<filter>
   <filter-name>encodingFilter</filter-name>
   <filter-class>com.rda.commons.filter.ChineseFilter</filter-class>
   <init-param>
    <param-name>encoding</param-name>
    <param-value>UTF-8</param-value>
   </init-param>
   <init-param>
    <param-name>forceEncoding</param-name>
    <param-value>true</param-value>
   </init-param>
</filter>
<filter-mapping>
   <filter-name>encodingFilter</filter-name>
   <url-pattern>/*</url-pattern>
</filter-mapping>

 

配置文件,然后呢,转码的过滤器就要自己写咯

package com.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;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;

/**
* 
* 创建人:金鑫
* 创建时间:2008-9-21 下午03:27:03
* 类作用:中文转码过滤器
*
*/
@SuppressWarnings("serial")
public class ChineseFilter extends HttpServlet implements Filter
{
private FilterConfig filterConfig;

public void init(FilterConfig filterConfig) throws ServletException
{
   this.filterConfig = filterConfig;
}

public void doFilter(ServletRequest request, ServletResponse response, FilterChain filterChain)
{
   try
   {
    String encoding = filterConfig.getInitParameter("encoding");
    //从WEB.xml配置文件中取出参数,这样我们可以通过配置修改编码格式.
    request.setCharacterEncoding(encoding);//设置请求的编码格式

    filterChain.doFilter(request, response);
   }
   catch (ServletException sx)
   {
    filterConfig.getServletContext().log(sx.getMessage());
   }
   catch (IOException iox)
   {
    filterConfig.getServletContext().log(iox.getMessage());
   }
}

public void destroy()
{
}

protected void doGet(HttpServletRequest arg0, HttpServletResponse arg1) throws ServletException, IOException
{
   super.doGet(arg0, arg1);
}

protected void doPost(HttpServletRequest arg0, HttpServletResponse arg1) throws ServletException, IOException
{
   super.doPost(arg0, arg1);
}

/**
* @function 验证数据是否为空,如果为空则转换
* @param param
* @return String
*/
public String checkNull(String param)
{
   if (param == null || param.equals(""))
   {
    return "";
   }
   else
   {
    return param;
   }
}
}

 

OK,完美解决掉啦。

其实解决乱码很简单的,就是通过过滤器来实现的,呵呵很简单吧?

分享到:
评论

相关推荐

    C#的ini文件操作,解决网上未解决的Get或Set中文乱码问题

    本资源我重新整理,用unicode完美解决中文乱码问题。用法: 1.声明实例 IniFile iniFile = new IniFile&#40;HttpContext.Current.Server.MapPath("~/App_Data/LocalData.ini"&#41;); 2.存数据 iniFile.WriteValue...

    ndoutils-2.0.1-utf8(完美解决中文乱码问题)

    由于之前的版本只适合服务器名为英文,不能很好的识别中文,经本人多方查找资料,将源码作了少量的修改,故已经使此版本支持中文。写库时只需要保证mysql的编码格式为utf8格式便可,此版本只对mysql的支持作了更改。...

    完美解决source insight 3.5中文显示乱码问题

    加强版可能包含了对中文字符集的支持,或者进行了其他优化以解决中文乱码问题。升级过程通常涉及下载并安装官方提供的更新程序或完整安装包。 4. **手动添加支持中文的字体**:如果上述方法无效,可能需要手动添加...

    完美解决SmartUpload上传中文乱码的jar包

    总结来说,这个“完美解决SmartUpload上传中文乱码的jar包”是针对SmartUpload组件的一个优化,它通过提供对UTF-8编码的支持,使得开发者能够在处理中文文件名时避免乱码问题。正确地将这个jar包集成到工程中,可以...

    完美解决source 3.5中文乱码

    本篇文章将详细介绍如何完美解决Source Insight 3.5中的中文乱码问题。 首先,我们需要理解为什么会出现中文乱码。通常,这是因为Source Insight 3.5默认使用的字符编码与你的代码文件或项目中的编码不匹配。常见的...

    完美解决PHP中文乱码问题

    ### 完美解决PHP中文乱码问题:深入解析与实用指南 #### 一、理解PHP中文乱码问题 在PHP编程中,中文乱码问题是开发者经常遇到的挑战,尤其是在处理多语言网站或应用时。这一问题主要源于字符集编码不一致,即数据...

    java汉字乱码终极解决代码

    开发中前台页面向后台传参,汉字乱码,看了好多网上的方法都解决不了,所以写了一个工具类,判断是乱码就转换,不乱码就不乱换,汉字字母符号自动判断。最后完美解决汉字乱码问题。

    完美解决WAMP乱码问题

    PHP乱码或者mysql乱码,多半是因为没有统一编码,要解决PHP/mysql乱码,只要做到三码合一即可. 所谓三码,是指文件编码,页面编码声明和数据库字符集,要使用相同的编码,如全部为utf-8. 怎么做到三码合一?下面以utf-8为例,...

    完美解决Python下matplotlib绘图中文乱码问题.docx

    通过删除 matplotlib 库的字体缓存文件,我们可以解决中文乱码问题,提高图形的美观性和可读性。 相关知识点 * matplotlib 库的字体缓存机制 * 中文字体信息的查看 * 删除 matplotlib 库的字体缓存文件 * 解决中文...

    sublime3完美注册正版,解决中文乱码问题

    接下来,我们关注“解决中文乱码问题”。在处理中文字符时,Sublime Text 3可能会遇到显示不正常的情况,这通常与编码设置有关。以下是一些解决方法: 1. 设置文件编码:打开文件时,Sublime Text 3会尝试自动检测...

    Android客户端发送请求中文乱码问题完美解决

    Android客户端发送请求中文乱码问题完美解决 Android客户端发送请求中文乱码问题是指在Android客户端向服务器端提交请求时出现的中文乱码问题,这是由于在HTTP请求中,中文字符被编码为乱码字符所致。为了解决这个...

    sourceInsight3.5 及中文乱码解决

    **源代码查看神器Source Insight 3.5及中文乱码问题解决方案** Source Insight是一款深受程序员喜爱的源代码查看和编辑工具,它以其强大的代码高亮、语法分析和跳转功能而闻名。然而,在处理含有中文字符的代码时,...

    完美解决PHP中文乱码

    ### 完美解决PHP中文乱码 #### 一、PHP网页的编码问题 在处理PHP中文乱码问题时,首要任务是确保PHP文件本身的编码与其所声明的网页编码相匹配。这涉及到设置正确的HTTP头部信息以及调整文件的实际编码格式。 ###...

    ffmpeg3.4.2完美解决windows乱码(源码补丁)

    标题提到的"ffmpeg3.4.2完美解决windows乱码(源码补丁)"是针对FFmpeg在处理中文文件名或元数据时可能出现的问题提供的一种解决方案。 FFmpeg 3.4.2是该软件的一个特定版本,它可能包含了对Windows平台中文乱码问题...

    Mysql中文乱码问题完美解决方案

    ### MySQL中文乱码问题完美解决方案 #### 背景与问题描述 在处理MySQL数据库时,中文乱码问题是一个常见的技术挑战。这类问题通常源于字符集设置不一致或配置不当,尤其是在不同系统环境(如开发环境与生产环境)...

    Qt中文乱码完美解决方案.docx

    解决 Qt 中文乱码问题的关键是使用正确的编码格式和转换中文字符串。使用带 BOM 的 UTF-8 编码格式可以确保源文件中的中文字符正确地被编码和解码,而使用 QStringLiteral() 函数可以对中文字符串进行正确的转换。...

    jsp实现上传和下载 完全解决中文乱码问题

    最近做了jsp项目,要用到上传和下载,从网上下了一个smartupload项目文件,封成jar包之后使用发现会出现中文乱码问题,后来网上一查,发现出现这个问题的人还真多,很多博客里面只是说明了如何解决,并没有具体实现...

    Serv-U完美解决中日韩文件(夹)名显示乱码

    标题“Serv-U完美解决中日韩文件(夹)名显示乱码”和描述指出的问题,是针对FTP服务器软件Serv-U在处理非英文字符(特别是中日韩字符)时可能出现的乱码问题。本文将详细探讨这个问题,并提供解决方案。 Serv-U是一...

Global site tag (gtag.js) - Google Analytics