您的位置:首页 > 运维架构 > Tomcat

中文乱码问题,Eclipse能正常显示,但在tomcat部署工程中不行

2016-08-02 14:46 477 查看
         今天在做Excel导出时,前台传参到后台controller,出现中文乱码,在网上搜了很多种办法,都没能解决掉,总结了下,最后在同事的提醒下,终于找到那里的问题了,和大家分享下中文乱码处理的几种办法,希望能够帮助到大家。

1.tomcat 工程中conf下面server.xml 设置<Connector port="8080" protocol="HTTP/1.1" 
               connectionTimeout="20000" 
               redirectPort="8443" URIEncoding="UTF-8" />

这个办法应该是网上说的最多的

2.    String jqajlb=  new String(request.getParameter("jqajlb").getBytes("iso-8859-1"),"UTF-8");  

这是一种解决办法,原理的话 ,可以参考以下链接http://blog.csdn.net/skiffloveblue/article/details/7869264 挺详细的解释

3.第三种办法也就是解决我问题的方法:代码共享

前台页面方法:

function VIEW_ZFBA_YCJC_ListView_expExcel()
{
  try
  {
    var lv='VIEW_ZFBA_YCJC.ListView';
    tb='grid';
    id='lv';
    var vq= VIEW_ZFBA_YCJC_ListView_queryParams;
    var fm=document.createElement('form');
    fm.id='2FDB87153A2842DB80D2A308F276F63D';
    var jqajlb=encodeURI(encodeURI(vq['jqajlb']));
    fm.method='post';
    fm.action = '<%=path%>/ycjc/export2jExcel?state='+vq['state']+'&jqajlb='+jqajlb+'&jcdid='+vq['jcdid']+'&starttime='+vq['ycsjfssj']+'&endtime='+vq['ycsjfssj1']+'&badwdm='+vq['badwdm']+'&jcd='+vq['jcd'];
    document.body.appendChild(fm); 
    var b=document.getElementById('2FDB87153A2842DB80D2A308F276F63D');

后台:

String jqajlb=URLDecoder.decode(getRequest().getParameter("jqajlb"), "UTF-8");

应该还有其他比较好的解决办法,欢迎大家补充,谢谢
   
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: