最近在开发过程中遇到不少中文乱码问题,google无数次,总算解决一部分,哦也!
在开发的时候,所有的jsp页面都使用UTF-8编码(UTF-8真是个好东西!)
1.struts中资源文件中如果value为中文,显示乱码
解决办法:使用eclipse插件Properties Editor 更新站点http://propedit.sourceforge.jp/eclipse/updates/(建议自动更新)
步骤:
Eclipse下的“帮助”/“软件更新”/”查找并安装“/选择第二项/“新建远程站点”/name随意写,url输入http://propedit.sourceforge.jp/eclipse/updates/
2.表单提交中文时显示乱码
解决办法:使用servlet过滤器filter
在TOMCAT的目录下的\webapps\jsp-examples\WEB-INF\classes\filters\找到SetCharacterEncodingFilter.java 这个类,放到你的程序中并配置好映射路径。
<filter>
<filter-name>Set Character Encoding</filter-name>
<filter-class>com.wygl.service.SetCharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>Set Character Encoding</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
这样就ok了,还有个需要注意的地方,当时filter配置好后,提交还是乱码,检查了好久才发现,原来
- "test1.jsp" id="listForm" >
少些了mothed="post"
- "test1.jsp" id="listForm" method="post" >
3. struts的中文问题
解决方法:使用自己的ActionServlet
自己写一个MyActionServlet继承ActionServlet
- import javax.servlet.http.HttpServletRequest;
- import javax.servlet.http.HttpServletResponse;
- import org.apache.struts.action.ActionServlet;
-
- public class MyActionServlet extends ActionServlet{
- protected void process(HttpServletRequest request, HttpServletResponse response) throws java.io.IOException, javax.servlet.ServletException {
-
- request.setCharacterEncoding("UTF-8");
- super.process(request, response);
- }
- }
然后在web.xml里面使用MyActionServlexml
- <servlet>
- <servlet-name>actionservlet-name>
- <servlet-class>com.wygl.service.MyActionServletservlet-class>
- <init-param>
- <param-name>configparam-name>
- <param-value>/WEB-INF/struts-config.xmlparam-value>
- init-param>
- <init-param>
- <param-name>debugparam-name>
- <param-value>3param-value>
- init-param>
- <init-param>
- <param-name>detailparam-name>
- <param-value>3param-value>
- init-param>
- <load-on-startup>0load-on-startup>
- servlet>
这样就ok了
4. mysql的中文问题
解决方法:统一编码
在mysql创建数据库的时候注意选择编码UTF-8
如果使用Spring + Hibernate来开发,在applicationContext.xml中配置dataSource的url时这样写:
xml 代码
- <property name="url" value="jdbc:mysql://127.0.0.1:3306/pm?useUnicode=true&characterEncoding=UTF-8"></property>
5. js,ajax 的中文问题
js使用的是UTF-8编码,只要包含js的页面也使用UTF-8,js就不会出现乱码
关于ajax,通过ajax将数据提交到服务器端,如果数据中有中文,就会出现乱码
原因:tomcat传参使用ISO-8859-1来编码,而web页面和服务器端都使用的是UTF-8
解决方法:使用ajax的POST,不要使用GET,然后在服务器端这样写
String name = new String(request.getParameter("name").getBytes("ISO-8859-1"), "utf-8");
解决!
分享到:
相关推荐
本文将深入探讨Ajax中文乱码问题的成因,并提供一系列解决方案。 **一、问题原因** 1. **编码格式不一致**:服务器与客户端(浏览器)之间使用的字符编码格式不同,例如服务器使用GBK编码,而浏览器使用UTF-8编码...
JSP 中文乱码问题解决办法 JSP 页面中中文乱码问题是指在 JSP 页面中使用中文时,页面显示乱码的现象。这种问题的解决办法可以从多方面入手,包括设置页面的字符编码、使用 POST 方式提交表单、使用 GET 方式提交...
"Java中文乱码问题解决" Java中文乱码问题是Java开发中常见的问题,尤其是在Web开发中,乱码问题会导致页面显示混乱,影响用户体验。解决乱码问题需要了解编码的基本原理和各种编码格式的区别。 编码的原因可以...
soapUI输入中文显示为乱码 响应报文中文乱码问题解决方法
一、页面中文乱码解决 对于jsp页面中文乱码问题,可以通过修改jsp页面的编码方式来解决。我们可以在jsp页面的开头添加 ”utf-8” %>指令,以指定jsp页面的编码方式为UTF-8。这将确保jsp页面中的中文字符正确显示。 ...
### Navicat for MySQL 导入Excel中文乱码问题解决 #### 一、问题背景 在使用Navicat for MySQL工具进行数据导入时,经常会出现中文乱码的问题,尤其是在处理Excel文件时更为常见。这种现象不仅影响数据的正确性,...
解决Jmeter5.5、Jmeter5.5、Jmeter5.5上传文件中文乱码问题和录制脚本中文乱码问题,其他版本请勿使用! 使用时替换原本的lib\ext目录下的ApacheJMeter_http.jar文件并重启,上传文件时,需要勾选“对POST使用...
串口通信中文乱码问题解决
jsp SmartUpload 中文乱码问题解决 jsp SmartUpload 中文乱码问题解决是指在使用 jsp 的 SmartUpload 组件进行文件上传下载时,遇到中文乱码问题的解决方法。在这篇文章中,我们将介绍如何解决 jsp 中 SmartUpload ...
### jQuery + ASP AJAX 中文乱码问题解决方案 在开发基于jQuery和ASP的Web应用程序时,中文乱码问题可能成为困扰开发者的一大难题。特别是在使用Ajax进行前后端数据交互时,中文字符可能会出现乱码现象,影响用户...
最后,解决中文乱码问题可以使用一种更好的解决方法,即生成一个只有字母和数字的序列作为文件名,而将原来带有中文的名字保存在数据库中,这样调用move_uploaded_file()就不会出现问题,下载的时候只需将文件名改为...
### JFreeChart中文乱码问题解决 在使用Java进行数据可视化的过程中,经常需要用到JFreeChart这一强大的图表绘制库。然而,在处理中文字符时,开发者往往会遇到一个常见的问题——中文乱码。本文将深入探讨如何解决...
因此,如果在上述设置都无法解决问题的时候,应该要考虑一下系统字体文件的问题。 解决 Eclipse 中文乱码问题的关键是了解 Eclipse 的编码机制和设置,并遵循避免中文乱码问题的两个原则。在实际项目中,遇到中文...
### 51单片机串口发送汉字乱码问题解决方案 #### 一、问题背景与现象 在使用51单片机进行串口通信时,可能会遇到一个常见问题:通过串口发送汉字时,接收端接收到的是乱码而不是正常的汉字。这不仅影响了数据传输...
对于使用PL/SQL进行数据库开发与管理的人员来说,遇到中文乱码问题时,需要采取一定的措施来解决问题。本文将详细介绍如何解决PL/SQL中的中文乱码问题,并提供具体的步骤与方法。 #### 解决方案详解 ##### 1. 修改...
### MySQL中文乱码问题解决方案 在使用MySQL的过程中,中文乱码问题是常见的问题之一,尤其是在数据库初始设置不当时,更容易出现此类问题。本文将详细介绍如何彻底解决MySQL中的中文乱码问题。 #### 一、理解中文...
Tomcat和WebLogic中文乱码问题解决方案 在 Java Web 开发中,中文乱码问题一直是困扰开发者的主要问题之一。 Tomcat 和 WebLogic 是两个常用的 web 服务器,都是支持 Servlet 和 JSP 的。然而,在使用这些服务器时...
python OpenCV imshow()中文乱码问题解决方法之一
### MySQL中文乱码问题解决方案 在使用MySQL的过程中,中文乱码问题是经常遇到的一个难题,它不仅影响数据的正确性,还可能对整个系统的稳定性和用户体验造成负面影响。本文将详细介绍如何解决MySQL中的中文乱码...