JAVA环境下处理中文乱码问题一直是很多人困扰的问题,像URL传参乱码,写进数据库乱码,服务写中文文字图片乱码处理及导出PDF乱码。
1:安装中文支持
yum groupinstall "fonts"
2:设置系统编码
3:上传字体simsun.ttc至服务器JDK目录(正常该文件在本地的文件系统中可以找到)
4:JAVA导出PDF部分代码
ITextRenderer renderer = new ITextRenderer();ITextFontResolver fontResolver = renderer.getFontResolver(); String pdfFontUrl="c:/Windows/Fonts/simsun.ttc"; fontResolver.addFont(pdfFontUrl, BaseFont.IDENTITY_H, BaseFont.NOT_EMBEDDED); renderer.setDocumentFromString(htmls);
5:tomcat get方式传参乱码,server.xml文件如下配置
6:数据库乱码
JDBC链接
1 jdbc_url=jdbc:mysql://localhost:3306/xxxx?useUnicode=true&characterEncoding=utf-8&zeroDateTimeBehavior=convertToNull&transformedBitIsBoolean=true&&allowMultiQueries=true数据库设置编码。my.cnf中配置
7:前端显示乱码,主要是前端文件的编码设置。针对接收到的文字乱码主要通过后端程序转化。
后端接收:new String(str.getBytes(), encode))JSP设置:request.setCharacterEncoding("UTF-8");
8:web.xml文件中增加过滤器配置
字符集过滤器encodingFilterorg.springframework.web.filter.CharacterEncodingFilter字符集编码encodingUTF-8
以上为大部分常见的乱码问题解决方法,供参考。