jsp get参数乱码问题


摘自:username2.iteye.com/blog/1597917
个人理解中文传送的时后需要转码:

js代码:
要进行两次转码才不会出现乱码(默认为UTF-8)
encodeURI(encodeURI(http://localhost/qq/index.jsp?title=专业));

java接收参数代码:
String title = request.getParameter("title");
title = URLDecoder.decode(title, "UTF-8");

java 编码:
http://localhost/qq/index.jsp?title=URLEncoder.encode(URLEncoder.encode(title,"UTF-8"));

本地开发时候没有乱码,可是到linux中出现乱码, 下面是解决的方法, 但没有找到乱码的原因,以下作为使用记录。

1传递中文
parent.location.href=queryURL+"?title="+encodeURI(encodeURI(title ) );

2 有存在iframe,则decode参数,后传递数据。
<%
String title = request.getParameter("title");
if(title !=null ){
title = java.net.URLDecoder.decode(title, "UTF-8");
//如果这里还是乱码则用下面的方法转码
// title=new String(title.getBytes("GBK"),"ISO8859-1");
}
%>
<iframe height="530" width="100%" src="newsList${ suffix}?c2str=${c2str}&tabid=1&title=<%=(title!=null?title:"")%>&area=${ !empty param.area? param.area:‘‘ }" id="newsList" scrolling="no" frameborder="0"></iframe>

3第三个页面接收数据再次转码
title = URLDecoder.decode(URLDecoder.decode(title, "UTF-8") ,"UTF-8") ;

作为个人记录用。

总结:最后进行了两次编码,和两次解码。再没有出现乱码了。但为什么还是不清楚

jsp get参数乱码问题

时间: 2025-01-05 19:30:54

jsp get参数乱码问题的相关文章

我遇到的jsp 传递参数 出现乱码的情况(项目统一编码utf-8)

今天真是花了不少时间在这个乱码的问题上啊!为防止下次自己或别人再遇到相似的问题浪费过多的精力在这里... 特写下一些统一编码的相关步骤,不常写文章,本文可能写得不怎么好,仅供参考,谢谢 统一各文件的编码格式为UTF-8: 我的jsp文件头部:<%@ page language="java" pageEncoding="UTF-8"%> (xml文件的头部默认都是:  <?xml version="1.0" encoding=&q

JSP页面传递参数乱码问题整理

1.JSP页面之间传递中文参数乱码 (1).a.jsp中正常传递参数,b.jsp 中 <% String projectName = new String(request.getParameter("projectName").getBytes("ISO-8859-1"),"UTF-8"); %> <meta http-equiv="Content-Type" content="text/html;

两个jsp之间传参数乱码

两个jsp之间传参数乱码 一.问题描述: 一个jsp传中文参数调另一个jsp,浏览器接到的参数显示乱码,以下是我个人解决办法,希望有所帮助~~ 二.问题解决办法: 1.传参数的jsp(一定要两个encodeURI): 路径/文件名.jsp?title=' + encodeURI(encodeURI(title)); 2.接参数的jsp(建议接参数解码时判空,否则这个参数不传时,会报错): //引入<%@ page import="java.net.URLDecoder" %>

http中 get方法 传送中文参数乱码解决办法

http传送参数有两种方法:get 和post  当时使用get方法传递中文参数是会有乱码现象 解决办法: 1.在jsp压面url后面的参数使用 encodeURI:"&zxbghy="+ encodeURI(zxbghy) 2.在后台java获取参数时使用字节数组:temphgdmhy = new String(hgdmhy.getBytes("ISO-8859-1"), "UTF-8");  案例,用get方法传递两个中文参数:zxb

jsp之中文乱码问题

在eclipse里面我们的jsp页面如果我们写了中文,保存的时候会弹出一个框,让你选择保存方式,之所以这样是因为jsp默认的文件编码是ISO-8859-1字符集中无中文字符. 一个比较好的解决办法是在这个jsp页面的开头添加如下一句: <%@ page language="java" import="java.util.*" pageEncoding="UTF-8" %> 就可以保存了,切在服务器运行了之后,再去页面浏览的时候也是正常

(转载)关于JSP和Servlet乱码处理

JSP和Servlet的中文乱码处理 前几天学习了JSP和Servlet中有关中文乱码的一些问题,写成了博客,今天进行更新一下.应该是可以解决日常的乱码问题了.现在作以下总结希望对需要的人有所帮助.我也是刚学,所以有不足之处希望谅解. 一.表单提交时出现乱码: 在进行表单提交的时候,经常提交一些中文,自然就避免不了出现中文乱码的情况,对于表单来说有两种提交方式:get和post提交方式.所以请求的时候便有get请求和post请求.以前我一直以为get请求和post请求方式出现的乱码的解决方式是一

jQuery Ajax传值给Servlet,在Servlet里接受参数乱码的解决方法

最近在学jquery ui,在做一个小功能的时候需要将前台的值获取到,通过Ajax传递给Servlet,然后再在返回数据结果,但是在Servlet接受参数的时候,通过后台打印,发现接受乱码,代码示例如下: public void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { response.setContentType("text/ht

java url中文参数乱码问题

http://www.blogjava.net/jerry-zhaoj/archive/2009/07/16/286993.html 转 JAVA 中URL链接中文参数乱码的处理方法JAVA 中URL链接中文参数乱码的处理方法 JAVA 中URL链接中文参数乱码的处理方法 在url中问参数乱码,我们已经在 "解决ajax提交中文.URL中文参数传递后的乱码问题的解决办法" 一张提出了一中解决办法, 网子是:http://www.javaly.cn/javahome/java/conte

请求参数的绑定 请求参数乱码问题

绑定的机制 表单中请求参数都是基于 key=value 的 SpringMVC 绑定请求参数的过程是通过   把表单提交请求参数,作为控制器中方法参数   进行绑定的 例如: <a href="account/findAccount?accountId=10">查询账户</a> 中请求参数是:   accountId=10 /** * 查询账户 * @return */ @RequestMapping("/findAccount") publ