您的位置 首页 java

JAVAWEB开发下常见中文乱码问题解决

JAVA环境下处理中文乱码问题一直是很多人困扰的问题,像URL传参乱码,写进数据库乱码,服务写中文文字图片乱码处理及导出PDF乱码。

1:安装中文支持

 yum groupinstall "fonts"  

2:设置系统编码

 echo $LANGvim /etc/locale.conf -- 编辑服务器编码LANG="zh_CN.UTF-8"//重启系统  

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文件如下配置

 <Connector executor="tomcatThreadPool" port="8080"  maxHttpHeaderSize="8192" useBodyEncodingForURI="true" disableUploadTimeout="true" URIEncoding="UTF-8" />  

6:数据库乱码

JDBC链接

 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文件中增加过滤器配置

 <filter>    <description>字符集过滤器</description>    <filter-name>encodingFilter</filter-name>    <filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>    <init-param>      <description>字符集编码</description>      <param-name>encoding</param-name>      <param-value>UTF-8</param-value>    </init-param>  </filter>  

以上为大部分常见的乱码问题解决方法,供参考。

文章来源:智云一二三科技

文章标题:JAVAWEB开发下常见中文乱码问题解决

文章地址:https://www.zhihuclub.com/187680.shtml

关于作者: 智云科技

热门文章

网站地图