javaee中乱码问题

mnm__ 2012-05-17 05:12:10
ssh框架。在jsp页面上写上超链接地址:demoAction?type=信息;在DemoAction里面接收String type=httpservletrequest.getParamter("type");然后type的值就是??,用了网上的两种方法,方法一:httpServletResponse.setContentType("text/html; charset=UTF-8");httpServletRequest.setCharacterEncoding("UTF-8");结果还是??
方法二:String type=new String(httpservletrequest.getParamter("type").getByte[]("UTF-8"))或者("IOS8859-1")
结果虽然是汉语,但是并不是“信息”两个字


有没有其他方法,不要filter的那种,感觉跟第一种方法的效果应该是一样的。
...全文
197 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
ABCDEF 2012-05-24
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 的回复:]
引用 1 楼 的回复:
如果参数包含中文,强烈建议使用form的post方式提交
不是form,是<a href=""></a>
[/Quote]
<from id="from1" method="post">
<a href="#" onclick="mySubmit()"></a>

<input id="hidden_info" name="hidden_info" type="hidden" value="中文参数"/>
</form>
function mySubmit(){
document.forms["from1"].action="";
document.forms["from1"].submit();
}

买房动力十足 2012-05-17
  • 打赏
  • 举报
回复
type= new String(type.getBytes("iso-8859-1"), "UTF-8");


这样就行了~
关键我是洛哥 2012-05-17
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 的回复:]
String type=new String(httpservletrequest.getParamter("type").getBytes("iso-8859-1") ,"UTF-8")
[/Quote]
这个真可以,今天试了一切办法 最后还是这个有用。不过后台可能要两次解码才正确!!
VanBaston 2012-05-17
  • 打赏
  • 举报
回复
前台用js的encodeURI等3个函数编译,后台在解码就好了,解码用utf-8去解码
_jerrytiger 2012-05-17
  • 打赏
  • 举报
回复
String type=new String(httpservletrequest.getParamter("type").getBytes("iso-8859-1") ,"UTF-8")
碎碎兵 2012-05-17
  • 打赏
  • 举报
回复
用js,encode一下,后台decode一下
mnm__ 2012-05-17
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 的回复:]
如果参数包含中文,强烈建议使用form的post方式提交
[/Quote]不是form,是<a href=""></a>
ABCDEF 2012-05-17
  • 打赏
  • 举报
回复
如果参数包含中文,强烈建议使用form的post方式提交

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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