1、使用代码完成字符集修改
方法(一):
html页面:
function testOne() {
var url = "testOne_test.do?expr="+你好;
location = encodeURI(url);
}
后台java代码:
String expr = new String(request.getParameter("expr").getBytes("ISO-8859-1"),"UTF-8");
方法(二):
html页面:
function testOne() {
var url = "testOne_test.do?expr="+你好;
location = encodeURI(encodeURI(url));
}
后台java代码:
String expr = java.net.URLDecoder.decode(lrequest.getParameter("expr") , "UTF-8");
2、修改tomcat中的配置参数
在tomcat下面找到server.xml
<Connector port="8080" maxThreads="150" minSpareThreads="25" maxSpareThreads="75" URIEncoding="GBK">
根据需要修改为UTF-8等字符集。
3、在web工程中添加spring.jar,使用spring的CharacterEncodingFilter
view plaincopy to clipboardprint?
<filter>
<filter-name>encoding</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
</init-param>
</filter>
<filter-mapping>
<filter-name>encoding</filter-name>
<url-pattern>/*</url-pattern>
</filter-mapping>
org.springframework.web.filter.CharacterEncodingFilter 中的转码部分:
view plaincopy to clipboardprint?
protected void doFilterInternal(
HttpServletRequest request, HttpServletResponse response, FilterChain filterChain)
throws ServletException, IOException {
if (this.encoding != null && (this.forceEncoding || request.getCharacterEncoding() == null)) {
request.setCharacterEncoding(this.encoding);
if (this.forceEncoding && responseSetCharacterEncodingAvailable) {
response.setCharacterEncoding(this.encoding);
}
}
filterChain.doFilter(request, response);
}
参考:
url:http://blog.163.com/wkyuyang_001/blog/static/108021228200971352434158/
Spring源文件
分享到:
相关推荐
当我们需要在两个页面间通过URL传递参数时,经常会遇到中文乱码问题。这个问题主要是因为URL中的参数可能没有经过正确的编码和解码处理。为了解决这个问题,我们可以采取一些方法,特别是当使用jQuery来获取URL参数...
本文将深入探讨如何解决JavaScript(简称JS)在传递中文字符时出现的乱码问题,并提供具体的解决方案。 #### 一、问题背景 在Web应用中,前端页面与后端服务之间通过HTTP请求进行数据交互是非常常见的操作。当这些...
例如,通过JavaScript调用Web服务传递中文参数时,仅配置Web.config可能不足以解决问题,需要在代码中处理编码。 另外,如果从其他已正确处理编码的页面获取中文参数,可以直接使用`System.Web.HttpUtility....
通过以上方法,我们可以有效地解决AJAX传递中文参数时可能出现的乱码问题。关键是在发送端进行编码,在接收端进行相应的解码处理。同时,保持前后端以及数据库字符集的一致性也是很重要的。掌握了这些技巧后,开发者...
### extjs前后台交互参数出现中文乱码问题的解决方法 #### 问题背景与原因分析 在使用MyEclipse开发工具进行Web应用开发时,尤其是采用ExtJS框架结合Ajax技术进行前后端数据交互的过程中,可能会遇到一个常见的...
然而,当URL需要传递包含中文字符的参数时,由于不同系统和环境的编码差异,可能会导致中文参数在传输过程中出现乱码。为了解决这个问题,我们可以利用JavaScript中的`encodeURI`函数来对中文参数进行编码,然后在...
在实际解决乱码问题的过程中,如果发现使用Base64加密传输中文数据还会出现问题,可以改用URL编码的方式来传输数据,即使用JavaScript的`encodeURI`函数对数据进行两次URL编码,后端接收到后进行一次URL解码即可。...
然而,当我们在GET请求的URL中直接传递包含中文字符的参数时,可能会遇到乱码问题。这是因为不同系统、浏览器和服务器对字符编码的支持不一致,导致在传输过程中中文字符无法正确解析。以下是对这个问题的深入探讨和...
在开发Web应用时,经常会遇到跨语言环境的数据传输问题,特别是在JavaScript(JS)与服务器端Action之间传递包含中文字符的参数时,乱码问题尤为常见。这个问题主要源于字符编码的不同处理,导致数据在传输过程中...
为了解决奇数个中文字符URL传递乱码的问题,可以采用JavaScript来实现正确的编码处理。具体步骤如下: 1. **获取原始URL**:首先获取用户输入或系统生成的原始URL。 2. **编码处理**: - 使用`encodeURI()`函数...
3. **正确使用JavaScript编码函数**:在传递中文字符时,使用`encodeURIComponent()`函数进行编码,它会将所有非字母数字字符转换为UTF-8序列。在接收响应数据时,若数据是JSON格式,JSON.parse()会自动处理编码问题...
综上所述,解决AJAX技术使用`XMLHttpRequest`对象传递参数时出现的中文乱码问题,关键在于保持客户端与服务器端的编码一致性。通过合理设置请求头、使用适当的编码和解码函数,可以有效避免此类问题的发生。此外,在...
总结来说,解决.NET中URL中文参数值乱码问题的方法主要包括在web.config中进行全局编码设置、使用Server.UrlEncode和Server.UrlDecode方法编码解码参数、使用JavaScript的escape函数、以及在编程中使用...
在Java Web开发中,URL中文乱码问题是一个常见的困扰,主要出现在传递含有中文字符的参数时。本案例中,我们将探讨如何解决这个问题,涉及到的主要知识点包括URL编码、字符集转换以及在Java Servlet、JSP和Struts2...
在Web开发中,使用URL传递参数是一种常见的方式,但在处理中文字符时经常会出现乱码问题。由于HTTP协议本身是基于ASCII字符集,而中文字符不是ASCII字符,所以在URL中的中文字符如果不经过特殊处理就会造成乱码。...
在参数值、参数名称以及报表名称中,如果包含中文字符或特殊字符,直接传递可能会导致乱码或错误问题。因此,需要对这些中文或特殊字符进行编码转换。 为了解决这个问题,FineReport提供了一个内部封装的编码方法,...
在进行Web开发时,我们经常会遇到URL传值乱码的问题,这主要涉及到URL编码与解码的机制。本文将深入探讨URL编码的原因、原理以及如何解决URL传值乱码的常见问题。 URL(统一资源定位符)是互联网上资源的唯一标识,...
在Web开发中,经常会遇到通过URL传递参数的情况。其中,`Request.QueryString`是ASP.NET中用于获取URL查询字符串(即URL中问号后的部分)的一种常用方法。然而,在处理包含中文字符的数据时,可能会遇到乱码的问题。...
4. JavaScript中传递URL参数的中文内容需使用`escape`函数。 5. 存储UTF-8编码的中文内容到SQL Server时,字段类型应为`NVARCHAR`,插入时在值前加上`N`,如`INSERT INTO user (name) VALUES (N'&username&')`。 在...
本教程将详细解释这个问题,并提供一个开源示例帮助你理解和解决中文乱码问题。 首先,我们需要了解二维码编码的基本原理。QR Code是一种二维条形码,能够存储大量的文本、数字、URL等信息。它使用了40个不同的版本...