request.setCharacterEncoding("gb2312");
把接收到的信息转成 gb2312 字符集的.
你自己又转了一次当然会有乱码,只有两个页采用相同的 字符集 就不会出现乱码.

解决方案 »

  1.   

    nextPage="searchItem.jsp"; 
     this.getServletConfig().getServletContext().getRequestDispatcher("/"+nextPage).forward(request,response);
    转到下一张页面,
    在下一张页面里用
    <%@ contentType="text/html;charest=g2312%>
    这时。我的页面里就会要么从BEAN中取到的是乱码,
    如果去掉的<%@ contentType="text/html;charest=g2312%>
    话,从数据库里取出来的是乱码。
    两难全啊。
      

  2.   

    转换其中的一个,用
    String sss = new String(ss.getBytes("ISO8859_1"),"GB2312");
    多试几个,各种环境的编码不一定一样.