首先声明从表单提交到数据库和从数据库读出显示在页面已经没有问题都是中文.但是传递中文的参数从一个页面到另一个页面时出现乱码,例如<a href ="deleteItemAction?name=<%=Item.getName()%>".其中name是中文.
    Action中的相关代码为name=request.getparameter("name");......
    希望各位帮忙解决一下哈!

解决方案 »

  1.   

    在接收业面请使用new String(xx.getBytes("ISO_8859_1"))比如:
    String val =request.getParameter("name");
    String newVal =new String(val.getBytes("ISO_8859_1"));即可
      

  2.   

    但我是在Action中根据传递参数对数据库中的记录做了删除操作,并没有显示在页面.你的意思是JSp页面间传递数据用的是ISO-8859-1?
      

  3.   

    如果是tomcat,就必须修改server.xml。
    详细信息看看这里:
    http://www.blogjava.net/rickhunter/articles/33571.html
      

  4.   

    你写一个方法:
    public static String changeNvl(String str) {
        try
        {
          str = (str == null) ? "" :
              new String(str.getBytes("ISO-8859-1"), "GBK").trim();
        }
        catch (Exception ex)
        {
          ex.printStackTrace();    }
        return str;
      }
    在ACTION里name=XXX.changeNvl(request.getparameter("name"));......
    就可以了