jsp重定向传值,如果值是汉字该怎么办

u010754616 2013-11-27 08:08:58
直接访问第一个页面test1.jsp
<%@ page language="java" contentType="text/html; charset=GBK"
pageEncoding="GBK"%>
<%
//这是test1.jsp页面
//response.sendRedirect("test2.jsp?uname=robert"); 这个没问题
response.sendRedirect("test2.jsp?uname=罗伯特");//这个在test2.jsp页面没有任何显示,乱码都没
%>


第二个页面test2.jsp
<%@ page language="java" contentType="text/html; charset=GBK"
pageEncoding="GBK"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<body>
<%
//这是test2.jsp页面
request.setCharacterEncoding("gbk");
String name=request.getParameter("uname");
out.print(name);
%>
</html>
...全文
526 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
u010754616 2013-11-28
  • 打赏
  • 举报
回复
与这个无关!
czuser 2013-11-28
  • 打赏
  • 举报
回复
引用 1 楼 magi1201 的回复:
java.net.URLEncoder.encode() 前台先转码 java.net.URLDecoder.decode() 后台解码
这个可以试试。
woshilianglin 2013-11-28
  • 打赏
  • 举报
回复
楼主答案在这里 test1.jsp <%@ page language="java" contentType="text/html; charset=gbk" pageEncoding="gbk"%> <%@page import="java.net.URI"%> <% //这是test1.jsp页面 String name = "罗伯特"; name = java.net.URLEncoder.encode(name,"gbk"); response.sendRedirect("test2.jsp?uname="+name); %> test2.jsp <%@ page language="java" contentType="text/html; charset=gbk" pageEncoding="gbk"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <body><br> <% //这是test2.jsp页面 String name = java.net.URLDecoder.decode(request.getQueryString(),"gbk"); out.println(name.split("\\=")[1]); %> </body> </html> 别忘了给分哦
beowulf2005 2013-11-28
  • 打赏
  • 举报
回复
每个月都有这样的问题,说了无数遍了,唉。 http://bbs.csdn.net/topics/390558421
长笛党希望 2013-11-28
  • 打赏
  • 举报
回复
response.sendRedirect("b.jsp?username=" + URLEncoder.encode("罗伯特","utf-8")); 然后在test2.jsp中转码
纵横IT 2013-11-28
  • 打赏
  • 举报
回复
你不要使用重定向 使用转发试试
sunbo624 2013-11-28
  • 打赏
  • 举报
回复
test2.jsp?uname=罗伯特 改成 test2.jsp?uname=%xx%xx%xx URLEncode 就是这么做
teemai 2013-11-27
  • 打赏
  • 举报
回复
值应该有吧。少了个</body> <%@ page language="java" contentType="text/html; charset=GBK" pageEncoding="GBK"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <body> <% //这是test2.jsp页面 request.setCharacterEncoding("gbk"); String name=request.getParameter("uname"); out.print(name); %> </body> </html>
姜小白- 2013-11-27
  • 打赏
  • 举报
回复
java.net.URLEncoder.encode() 前台先转码 java.net.URLDecoder.decode() 后台解码

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧