struts2的url乱码问题,action传值没有乱码。

shangyu79 2007-08-15 06:34:13
jsp页面编码为utf-8,则在action中取到form中的值正常。但是通过url传递过来的中文有问题。通过 String username=new String(getUsername().getBytes("ISO-8859-1"),"UTF-8");转换后,有些汉字正常,但是如果象这种则不正常:初一一班,显示的为"初一一口".
大家有没有url传值的经验,请指教
...全文
1287 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
bohu2114 2008-02-22
  • 打赏
  • 举报
回复
顶zhb_0324朋友,他说的,就解决我的问题了

加filter 改tomcat 也不一定就能完全解决 有些版本有问题
避免url中文
中文参数用post
yuqi508 2007-09-04
  • 打赏
  • 举报
回复
下面的可以实现
String url="message.jsp?msg=" +java.net.URLEncoder.encode("ClientInfoServlet:" + e.getMessage());
response.sendRedirect(url);

message.jsp页面
String str=request.getParameter("msg");
str=new String(str.getBytes("ISO-8859-1"));
fb30000 2007-09-04
  • 打赏
  • 举报
回复
在传之前先转成ascii码 action再转回来 我就这么干过
愤怒的小蒋 2007-09-04
  • 打赏
  • 举报
回复
乱码很头疼
zhb_0324 2007-09-04
  • 打赏
  • 举报
回复
加filter 改tomcat 也不一定就能完全解决 有些版本有问题
避免url中文
中文参数用post
9441 2007-09-03
  • 打赏
  • 举报
回复
关注
gstring 2007-08-16
  • 打赏
  • 举报
回复
如果是tomcat的话 在server.xml 的<Connector port="8080" 中加入
URIEncoding="UTF-8"
最好在写个 过滤器.
fbysss 2007-08-16
  • 打赏
  • 举报
回复
加一个encodingFilter就好了
shangyu79 2007-08-16
  • 打赏
  • 举报
回复
一、jsp页面是这样写的。
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%@ taglib prefix="s" uri="/struts-tags" %>
<%
response.setCharacterEncoding("utf-8");
%>

二、action中这么写:
String username=new String(getUsername().getBytes("ISO-8859-1"),"UTF-8");
String userxm=new String(getUserxm().getBytes("ISO-8859-1"),"UTF-8");

后台打印如下:===============2>username:汉字
===============2>userxm:初一一?

yu__yfchun125 2007-08-16
  • 打赏
  • 举报
回复


在请求页面写上:
response.setCharacterEncoding("utf-8");
在接受请求的页面写上:
request.setCharacterEncoding("utf-8");
d_y_l_y 2007-08-16
  • 打赏
  • 举报
回复
把你要传递的参数放在浏览器地址里面,看是什么结果!

81,092

社区成员

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

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