`
dyingcow
  • 浏览: 131348 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

[Java]URL中含有汉字参数的解决方法

阅读更多
<link rel="stylesheet" type="text/css" href="http://liushi.hitidea.org/plugins/plogeshi/styles/plogeshi.css">

servlet使用了utf-8的CharacterEncodingFilter对参数统一编码,jsp页面encoding=utf-8(或gb2312也可用,??)。页面href、js中拼接的URL均直接用utf-8编码的汉字作参数。在服务器端通过下述代码获取utf-8编码的汉字字符串。

String para = new String(req.getParameter("paraname").getBytes("iso8859_1"), "utf-8");

这里面有些混乱:主体页面是pageEncoding="UTF-8"的,而后来通过ajax更新的区域是一个pageEncoding="gb2312"的页面(这个设定比较失败,是由于之前的数据编码更换问题引入的,不过却带来了一些比较有意思的现象),而整个servlet request又是被一个utf-8编码的characterEncodingFilter编码过。在服务器端代码又利用String.getBytes()进行编码转换,最终才获得正确的编码。

分享到:
评论

相关推荐

    URL参数加密解密(java版)

    在Java开发中,URL参数加密解密是网络安全的重要环节,特别是在J2EE应用程序中,确保数据传输的安全性至关重要。URL参数通常包含用户敏感信息,如登录凭证、交易详情等,因此需要进行加密处理以防止数据在传输过程中...

    JAVA(Web)中URL链接中文参数乱码:

    JAVA(Web)中URL链接中文参数乱码,如,java web中的超链接&lt;a&gt;&lt;/a&gt;标签传中文参数,提交到servlet中后,解决乱码问题!

    Java Http请求传json数据乱码问题的解决

    在实际解决乱码问题的过程中,如果发现使用Base64加密传输中文数据还会出现问题,可以改用URL编码的方式来传输数据,即使用JavaScript的`encodeURI`函数对数据进行两次URL编码,后端接收到后进行一次URL解码即可。...

    java 用HttpsURLConnection进行传递中文时错误总结

    String encodedParam = URLEncoder.encode("中文参数", "UTF-8"); String url = "https://example.com?param=" + encodedParam; ``` 5. **处理响应头的Content-Type**:服务器返回的响应头也可能包含`Content-...

    JSP中js传递和解析URL参数以及中文转码和解码问题.docx

    在Web开发中,尤其是使用Java Server Pages (JSP)进行开发时,经常需要处理URL中的参数,包括参数的传递、解析以及对中文等特殊字符的处理。本文将详细介绍如何在JSP页面中利用JavaScript进行URL参数的传递和解析,...

    URL中文转换

    在Android的WebView组件中,如果需要加载带有中文参数的URL,必须确保对中文参数进行URL编码。例如: ```java String url = "http://example.com/search?query=" + URLEncoder.encode("中文搜索", "UTF-8"); webView...

    解决url中文乱码.doc

    在Java Web开发中,URL中文乱码问题是一个常见的困扰,主要出现在传递含有中文字符的参数时。本案例中,我们将探讨如何解决这个问题,涉及到的主要知识点包括URL编码、字符集转换以及在Java Servlet、JSP和Struts2...

    java中文解决大全(下)

    例如,将URL中的中文参数进行编码: ```java String urlParam = "中文参数"; String encodedParam = URLEncoder.encode(urlParam, "UTF-8"); ``` 在接收URL参数时进行解码: ```java String decodedParam = ...

    Json操作及中文乱码解决方案

    但如果遇到问题,可以尝试使用`encodeURIComponent`函数对中文参数进行编码。 2. **响应内容解码**:服务器返回的JSON数据包含中文时,需要确保浏览器能够正确识别其编码。JSON规范规定,所有JSON字符串必须以UTF-8...

    SupplyunittableUtil.java(中文乱码解决之道)

    在Java编程中,"中文乱码"是一个常见的问题,特别是在处理文本输入输出或者网络传输时。`SupplyunittableUtil.java` 这个文件名暗示了这是一个Java工具类,专门用于处理“供应单位表”(可能是一个数据库表格或数据...

    ajax提交中文乱码解决方法

    ### AJAX提交中文乱码解决方法 在Web开发中,AJAX(Asynchronous JavaScript and XML)是一种在无需重新加载整个网页的情况下,能够更新部分网页的技术。它通过JavaScript发起异步请求,与服务器进行数据交换,从而...

    jsp中页面间传汉字参数转码的方法.docx

    在JSP中,当需要将含有汉字的参数通过URL传递时,必须先进行转码,以防止URL中特殊字符或非ASCII字符引起的问题。通常,我们可以使用`java.net.URLEncoder.encode()`方法来对字符串进行编码。这个方法会将字符串中的...

    超强过滤器彻底解决JSP-SERVLET中文参数GET-POST传递的问题(转)

    总结,"超强过滤器"是解决JSP-Servlet之间中文参数GET-POST传递问题的有效手段,通过统一设定请求的字符编码,确保在整个Web应用中中文数据能够正确无误地传输和处理。对于大型项目,这样的全局解决方案可以大大提升...

    java中文乱码终极解决方案

    本文将深入探讨Java中解决中文乱码的终极策略,帮助开发者彻底摆脱这个困扰。 首先,我们要理解Java中的字符编码体系。Java采用Unicode作为其内部编码,这使得它能够处理世界上几乎所有的字符集。然而,当与外部...

    页面get请求 中文参数方法乱码问题的快速解决方法

    针对GET请求中文参数乱码的问题,这里提供一种快速解决方法:使用JavaScript的`encodeURI()`函数进行两次编码。`encodeURI()`函数是JavaScript提供的用于编码URI的函数,它不会对已经编码的字符以及特殊字符如'&'、'...

    URL傳遞中文參數問題

    1. **使用URLEncoder进行编码**:在发送含有中文参数的URL时,应先使用`java.net.URLEncoder.encode()`方法对参数进行编码。此方法会将中文字符转换为URL安全的格式,避免传输过程中的编码错误。 2. **正确设置JSP...

    解决页面传参中文乱码

    在Web开发过程中,特别是在使用Java进行后端开发时,经常遇到的一个问题是中文字符或非ASCII字符在URL参数中的乱码问题。这主要是因为客户端浏览器与服务器之间可能使用的字符集不同导致的。本文将详细介绍如何通过`...

    JSP汉字乱码解决大全

    - **URL编码处理**:对于URL中的中文参数,可以在客户端使用`URLEncoder.encode`方法进行编码,在服务端使用`URLDecoder.decode`解码。 ```java // 客户端编码 String encodedParam = URLEncoder.encode("中文...

    PHP基于curl post实现发送url及相关中文乱码问题解决方法

    $post_string = array('key' =&gt; '值', '中文参数' =&gt; '中文内容'); // 包含中文的POST数据 $ch = curl_init(); $this_header = array("content-type: application/x-www-form-urlencoded; charset=UTF-8"); // 设置...

    对Java Web应用开发中的中文乱码问题的研究与解决.pdf

    通过上述方法,可以有效地避免和解决Java Web应用中的中文乱码问题。理解字符编码的工作原理以及在Web开发中的应用,对于排查和修复这类问题至关重要。同时,随着技术的发展,现代Web框架(如Spring Boot)已经提供...

Global site tag (gtag.js) - Google Analytics