测试环境:
服务器tomcat5.0,
开发工具Myeclipse6.5,
过滤器已经配置,编码utf-8。
方法一:修改Tomcat配置
假设web服务使用8080作为端口,修改/conf/server.xml,增加红色这段
<Connector port="8080" maxThreads="150" minSpareThreads="25" maxSpareThreads="75" enableLookups="false" redirectPort="8443" acceptCount="100" debug="0" connectionTimeout="20000" disableUploadTimeout="true"
URIEncoding="utf-8"/>
传值代码
var url= "/yourwebapp/test.do?field1=测试例子";
window.open(url, "", "toolbar=no,location=no,status=no,menubar=no,scrollbars=yes,resizable=no,top=192,left=256,width=650,height=350");
获取值代码
String field1=request.getParameter("field1");
if(null == field1)
{
field1=request.getParameter("field1").trim();
}
方法二:使用java.net.URLEncoder与java.net.URLDecoder
假设没有使用方法一,可以采用第二种方法。
传值代码
var url= "/yourwebapp/test.do?field1=<%=java.net.URLEncoder.encode("测试例子","UTF-8")%>";
window.open(url, "", "toolbar=no,location=no,status=no,menubar=no,scrollbars=yes,resizable=no,top=192,left=256,width=650,height=350");
获取值代码
String field1=request.getParameter("field1");
if(null == field1)
{
field1=request.getParameter("field1").trim();
field1=java.net.URLDecoder.decode(field1,"UTF-8");
//tomcat默认使用ISO-8859-1进行URLEncoding,需要将其转换成我们需要的编码
field1=new String(field1.getBytes("ISO-8859-1"),"UTF-8");
}
分享到:
相关推荐
JSP 对 URL 链接中的中文乱码处理方法总结 JSP 对 URL 链接中的中文乱码处理方法总结是指在 JSP 应用程序中,如何正确地处理 URL 链接中的中文字符编码问题。这个问题的出现是由于不同浏览器和服务器的默认编码方式...
总结来说,获取URL参数在Web开发中是一个非常实用的功能,可以让我们在不刷新页面的情况下,动态获取URL中传递的参数值。这在实现某些单页应用(SPA)以及进行前后端分离开发时尤其重要。上述示例代码提供了一种有效...
总结,URL编码与解码是网络开发中不可或缺的基础技术,理解其原理和应用有助于构建稳定、兼容的Web应用程序。"url_decoder_v3.0"这样的工具,正是为了解决这方面的实际需求,使得开发者能够更加专注于业务逻辑,而非...
IE缺省对URL后面的参数是不编码发送的,但是Tomat缺省是按ISO8859-1来进行URL编码的,因此才会出错。 方法一: 对URL链接进行二次编码: 测试 或者单独对参数进行二次编码: var code_type = 中文参数; code_...
3. **Get方法生成的URL包含汉字**: 在HTTP的Get请求中,URL作为请求行的一部分,其中可能包含查询字符串。由于Get方法的特性,URL的长度受到限制,所以对非ASCII字符进行编码以减小长度并确保正确传输至关重要。 ...
当使用GET方法时,表单数据会被附加到URL上,并且URL是有限制的,不支持某些特殊字符,尤其是中文字符。这是因为URL(统一资源定位符)遵循特定的编码规则,即URL编码(也称为百分号编码)。在本例中,我们将探讨...
在进行Web开发的过程中,经常会遇到需要从URL地址栏中获取参数的情况,特别是当涉及到中文字符时,处理起来可能会更加复杂。本文将详细讲解如何利用JavaScript(简称JS)来正确地获取URL中的中文参数,并解决可能...
在GET请求中,参数通常以键值对的形式附加在URL后面,用问号(?)分隔,例如:`http://example.com/?param1=value1¶m2=value2`。如果value包含中文字符,它们需要被编码为URL编码形式。然而,服务器接收到请求后...
2. 对于GET请求,中文参数会附加在URL后面,如"?name=encodeURIComponent(用户名)"。对于POST请求,中文参数则放在send()方法的参数中。 四、Servlet处理中文 1. 在Servlet中,需要设置请求和响应的编码方式。在...
在本文中,我们将深入探讨关于Tomcat服务器和JSP开发中的关键知识点,这些知识点涵盖了从部署到错误处理,再到实用的编程技巧。 首先,Tomcat是Apache软件基金会的一个开源项目,它是一个流行的Java Servlet容器,...
这是因为GET请求方式将参数附加在URL后面,可能会被浏览器或者服务器自动转换编码,导致乱码;而POST请求方式的数据则包含在请求体中,通常不会出现这种情况。 #### 方法五:自定义过滤器 如果上述方法仍然无法...
它是将非ASCII字符、特殊字符等转换为URL可以传输的格式,即在百分号(%)后面跟随两个十六进制数字。当这些数据需要被接收端解析时,就需要进行URL解码。 2. ASP语言的相关知识: ASP(Active Server Pages)是一种...
- **数据传输位置**:POST请求的数据位于HTTP消息主体(Message Body)中,而不是像GET请求那样放在URL后面。 - **缓存与历史记录**:POST请求不会被浏览器自动缓存,也不会保留在浏览器的历史记录中,因此无法通过...
当我们在网页地址中看到以%开头,后面跟随两个十六进制数的形式时,这就是一个URL编码。这种编码机制主要为了处理URL中不能直接使用的字符,例如空格、中文、特殊符号等。它们通过转换为%加上相应的ASCII码值的十六...
[query] => name=tank&sex=1 // 所传的参数 [fragment] => top // 后面跟的锚点 ) ``` 这个函数在处理URL参数和导航时非常实用,可以方便地拆分URL并获取特定部分。 3. `basename()` 函数: `basename()` ...
总结一下,JavaScript提供了多种方式来获取URL参数和script标签中的参数。通过`getArgs`和`queryString`可以处理URL参数,而`getScriptArgs`和`getScriptArg`则适用于从script标签中提取参数。正确使用这些函数,...
- GET请求:数据通过URL(统一资源定位符)的查询字符串(即URL后面问号“?”后面的部分)传递。这种方式限制了数据量,因为URL长度有限。GET请求通常用于获取资源,其请求参数在地址栏可见,不利于隐私保护。 - ...
- URL编码:GET请求的数据会被附加到URL后面,因此需要对包含中文的参数进行URL编码(使用`encodeURIComponent()`函数)。服务端接收到请求后,再进行解码(如Java中的`java.net.URLDecoder.decode()`)。 - 设置...
- **GET方法**:对于GET请求,URL中的参数会携带在URL后面,由于URL的默认编码是ASCII,非英文字符可能会导致乱码。解决方法是在服务器端接收参数时,先将URL解码,然后用正确的编码(如UTF-8)进行解码,例如使用`...