url传值到Action乱码的解决方法

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 = "采购";}

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值