url传值到Action的乱码解决方法
来源:互联网 发布:蒙泰安装失败出现端口 编辑:程序博客网 时间:2024/06/18 04:55
jsp页面 URL传中文参数到Action里面出现乱码,用过滤器和控制器都解决不了,用了我两个多小时解决这个小问题!
解决方法有以下几种:
第一种:在Action中用 new String(str.getBytes("ISO8859_1"), "UTF8"),进行转码,因为传递的时候,中文默人的是ISO8859_1
第二种:可通过配置TOMCAT来解决此问题,具体解决方法如下:在tomcat的server.xml里,找到<Connector port="8080"
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" redirectPort="8443" acceptCount="100"
debug="0" connectionTimeout="20000"
disableUploadTimeout="true" useBodyEncodingForURI="true" URIEncoding="gbk">
其中是修改 disableUploadTimeout="true" useBodyEncodingForURI="true" URIEncoding="gbk" 其方法是防止在url中出现乱码
然后在每个Jsp页面添加如下代码
<%@ page pageEncoding=”gb2312″%>
<%@ page contentType=”text/html;charset=gb2312″%>
<%request.setCharacterEncoding(”gb2312″);%>
第三种:直接在ACTION中利用以下方法解决:request.setCharacterEncoding("gb2312");
response.setCharacterEncoding("gb2312");
<==========================================>
我用的是struct1.2+Hibernate3.0+Spring2.0
在做那个两个action的页面的时候,jsp页面的下拉列表通过actionForm传值给action,老是得到乱码,过滤器+server.xml+页面编码统一后,
仍不能解决。后来把下拉列表代码改成value值为数字的形式传值
<form action="todivideMission.do" method="post" >
<table width="100%" cellspacing="0">
<tr>
<td width="10%" align="center">任务类型</td><td width="15%">
<select name="t_type" id="missionchoose" >
<option value="0">请选择任务类型</option>
<option value="1">维修</option>
<option value="2">安装</option>
<option value="3">采购</option>
</select></td>
<td width="75%" align="left"><input type="submit" value="提交" ></td>
</tr>
</table>
</form>
然后在action中
int typeNo = Integer.parseInt(lform.getT_type()); //将下拉列表传来的值转化成int形
System.out.println(typeNo);
String type = null;
if(typeNo==1){type = "维修";}
if(typeNo==2){type = "安装";}
if(typeNo==3){type = "采购";}
解决方法有以下几种:
第一种:在Action中用 new String(str.getBytes("ISO8859_1"), "UTF8"),进行转码,因为传递的时候,中文默人的是ISO8859_1
第二种:可通过配置TOMCAT来解决此问题,具体解决方法如下:在tomcat的server.xml里,找到<Connector port="8080"
maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
enableLookups="false" redirectPort="8443" acceptCount="100"
debug="0" connectionTimeout="20000"
disableUploadTimeout="true" useBodyEncodingForURI="true" URIEncoding="gbk">
其中是修改 disableUploadTimeout="true" useBodyEncodingForURI="true" URIEncoding="gbk" 其方法是防止在url中出现乱码
然后在每个Jsp页面添加如下代码
<%@ page pageEncoding=”gb2312″%>
<%@ page contentType=”text/html;charset=gb2312″%>
<%request.setCharacterEncoding(”gb2312″);%>
第三种:直接在ACTION中利用以下方法解决:request.setCharacterEncoding("gb2312");
response.setCharacterEncoding("gb2312");
<==========================================>
我用的是struct1.2+Hibernate3.0+Spring2.0
在做那个两个action的页面的时候,jsp页面的下拉列表通过actionForm传值给action,老是得到乱码,过滤器+server.xml+页面编码统一后,
仍不能解决。后来把下拉列表代码改成value值为数字的形式传值
<form action="todivideMission.do" method="post" >
<table width="100%" cellspacing="0">
<tr>
<td width="10%" align="center">任务类型</td><td width="15%">
<select name="t_type" id="missionchoose" >
<option value="0">请选择任务类型</option>
<option value="1">维修</option>
<option value="2">安装</option>
<option value="3">采购</option>
</select></td>
<td width="75%" align="left"><input type="submit" value="提交" ></td>
</tr>
</table>
</form>
然后在action中
int typeNo = Integer.parseInt(lform.getT_type()); //将下拉列表传来的值转化成int形
System.out.println(typeNo);
String type = null;
if(typeNo==1){type = "维修";}
if(typeNo==2){type = "安装";}
if(typeNo==3){type = "采购";}
- url传值到Action乱码的解决方法
- url传值到Action的乱码解决方法
- url传值到Action乱码的解决方法
- url传值到Action的乱码解决方法
- URL传递中文乱码的解决方法
- 页面URL传中文乱码的解决方法
- servlet和action中获取URL中的汉字(解决URL中汉字为乱码的问题)
- servlet和action中获取URL中的汉字(解决URL中汉字为乱码的问题)
- URL中文乱码Javascript解决方法
- url中文乱码解决方法之一
- Javascript用Url传递参数出现中文乱码的解决方法
- Asp.Net Url 传值出现乱码的解决方法
- JAVASCRIPT用Url传递参数出现中文乱码的解决方法
- url传值用request.getparameter显示汉字乱码的解决方法
- C# JS URL 传参出现乱码的解决方法
- 用javascript跳转url传中文乱码的解决方法
- jsp 中使用url传值的中文乱码解决方法
- GET方法URL中传递中文参数乱码的解决方法
- 一生何求的伤感空间日志发布:如果有一天,我还记得你
- C# ASP.NET控制HTTP缓存
- brup payload
- js操作数组技巧
- 近期小结
- url传值到Action的乱码解决方法
- Linux ffmpeg的安装编译过程
- Ubuntu12.04下 mod_jk整合 java项目与php项目
- 修改数据库所有者
- ffmpeg的编译大全
- 我知道,没有人会在意我的一切
- 软考复习——树和二叉树
- Ffmpeg编译详解
- SELECT INTO 和 INSERT INTO SELECT 两种表复制语句