jsp代码:
<td class="thumb"><img src="images/product/0_tiny.gif" /><a href="ProductView?ep_name=<%=ep.getEp_name() %>" target="_blank"><%=ep.getEp_name() %></a></td>servlet代码:
response.setContentType("text/html;charset=utf-8");
request.setCharacterEncoding("utf-8");
String ep_name=request.getParameter("ep_name");
System.out.println(ep_name);
打印出来的是乱码

解决方案 »

  1.   

    加一句
    response.setCharacterEncoding("utf-8");
      

  2.   

    request.setCharacterEncoding("utf-8");
    String ep_name=request.getParameter("ep_name");
    System.out.println(ep_name);
      

  3.   

    String ep_name2 = new String(ep_name.getBytes("ISO-8859-1"),"utf-8"); 
    System.out.println(ep_name2);
      

  4.   

    不是用form表单传参时要先进行编码,在Servlet取的时候还要再解码
      

  5.   


    过滤器不一定能解决所有的乱码噢get请求时,url上的字符就不一定能解决的建议楼主直接将你的tomcat默认字符集改成utf-8,这才是一劳永逸的最佳方案噢
      

  6.   

    如果提交方式是get就要重新编码。如果是post就直接request.setCharacterEncoding("utf-8");就可以。
      

  7.   

    楼主你看看你的jsp页面的编码,和servlet一致吗
      

  8.   

    如果链接传值的话,在Tomcat的conf\server.xml里配置 <Connector port="80" protocol="HTTP/1.1" 
                   connectionTimeout="20000" 
                   redirectPort="8443" URIEncoding="utf-8" useBodyEncodingForURI="true"/>
      

  9.   

    非英文字符不要用url传递,不要用get传递 不就结了。。