各位大侠.
  我在TOMCATE下设置地SERVER.XML设置了URIEncoding="UTF-8",如下:
<Connector port="8080"
               maxThreads="150" minSpareThreads="25" maxSpareThreads="75"
               enableLookups="false" redirectPort="8444" acceptCount="100"
               debug="0" connectionTimeout="20000" 
               disableUploadTimeout="true"  URIEncoding="UTF-8"/>但是我采用GET方式提交参数到SERVLET时.取出来的中文参数是乱码.如果不我改SERVER.XML中参数.那么.我在后台取中文时只要加一句byte[] bytes = input.getBytes("ISO-8859-1");.STRING STR=NEW(BYTES) 就可以解决中文的问题.但现在不行了..

解决方案 »

  1.   

    页面的编码是不是也是utf8了,如果是的话不会显示乱码
      

  2.   

    不是页面..我是采用如下的代码来连接的 url = new URL ( "http://localhost:8080/WebRoot/servlet/psnSearchServlet?         SEARCH_KEYWORDS=%C0%ED%BD%E2&PAGE_NUM=1&PAGE_SIZE=5&VALIDATE=VALIDATE" ) ;
     uRLConnection = url.openConnection () ;
      

  3.   

    SEARCH_KEYWORDS=%C0%ED%BD%E2
    这个是get方式取传递参数,不是post方式取参数post方式取中文内容参数,可以安照楼主的方式实现在,也可以加一个过滤器,这个过滤器只实现一个功能,即码制转换,request.setCharacterEncoding("GBK"),这里的GBK也有可能是其他编码,看楼主的实际需要get方式的中文参数,应该用URLDecoder.decode()实现,String search_keywords = request.getParameter("SEARCH_KEYWORDS");  一般中文内容不建议中用get方式传
      

  4.   

    谢谢.楼上.刚刚的解决了这个问题.和楼上说的差不多.直接用DECODE来解码..