session.jsp的代码是:
<%@page contentType="text/html; charset=gb2312" language="java"%>
<html>
<head>
<title>session.jsp</title>
</head>
<body>
<%! String name="";%>
<%
   name=request.getParameter("username");   
   byte[] tmpbyte=name.getBytes("ISO8859_1");
   name=new String(tmpbyte);
   session.putValue("username",name);
%>
你的姓名是:<%=name%>
<form method=post action="session1.jsp">
你想吃什么:
<INPUT TYPE=TEXT NAME="food">
<INPUT TYPE=SUBMIT VALUE="SUBMIT">
  
</form>   
</body>
</html>
在session.jsp页面的name=request.getParameter("username");   后面加上如下代码,就可以了。byte[] tmpbyte=name.getBytes("ISO8859_1");
name=new String(tmpbyte);

解决方案 »

  1.   

    我现在有三个文件:
    session.html的代码是:
    <html>
    <head>
    <title>session.jsp</title>
    </head>
    <body>
    <form method="POST" action="session.jsp">  
      <p align="center">请输入你的姓名:<input type="text" name="username" size="20"></p>
      <p align="center"><input type="submit" value="提交" name="B1"></p>
    </form>
    </body>
    </html>
    session.jsp的代码是:
    <%@page contentType="text/html; charset=gb2312" language="java"%>
    <html>
    <head>
    <title>session.jsp</title>
    </head>
    <body>
    <%! String name="";%>
    <%
       name=new String(request.getParameter("username").getBytes("ISO8859_1"),"gb2312");  //一定要这样写 
       session.putValue("username",name);
    %>
    你的姓名是:<%=name%>
    <form method=post action="session1.jsp">
    你想吃什么:
    <INPUT TYPE=TEXT NAME="food">
    <INPUT TYPE=SUBMIT VALUE="SUBMIT">
      
    </form>   
    </body>
    </html>
    session1.jsp的代码是:
    <%@page contentType="text/html; charset=gb2312" language="java"%>
    <html>
    <head>
    <title> session1.jsp</title>
    </head>
    <body>
    <%!String food="";%>
    <%
       food=new String(request.getParameter("food").getBytes("ISO8859_1"),"gb2312");  //一定要这样写 
       System.out.println(food);
       String name=(String) session.getValue("username");
    %>
    你的名字是:<%=name%>
    你吃的是:<%=food%>
    </body>
    </html>
      

  2.   

    我现在有三个文件:
    session.html的代码是:
    <html>
    <head>
    <title>session.jsp</title>
    </head>
    <body>
    <form method="POST" action="session.jsp">  
      <p align="center">请输入你的姓名:<input type="text" name="username" size="20"></p>
      <p align="center"><input type="submit" value="提交" name="B1"></p>
    </form>
    </body>
    </html>
    session.jsp的代码是:
    <%@page contentType="text/html; charset=gb2312" language="java"%>
    <html>
    <head>
    <title>session.jsp</title>
    </head>
    <body>
    <%! String name="";%>
    <%
       name=new String(request.getParameter("username").getBytes("ISO8859_1"),"gb2312");   //一定要这样写
       session.putValue("username",name);
    %>
    你的姓名是:<%=name%>
    <form method=post action="session1.jsp">
    你想吃什么:
    <INPUT TYPE=TEXT NAME="food">
    <INPUT TYPE=SUBMIT VALUE="SUBMIT">
      
    </form>   
    </body>
    </html>
    session1.jsp的代码是:
    <%@page contentType="text/html; charset=gb2312" language="java"%>
    <html>
    <head>
    <title> session1.jsp</title>
    </head>
    <body>
    <%!String food="";%>
    <%
       food=new String(request.getParameter("food").getBytes("ISO8859_1"),"gb2312");   //一定要这样写
       
       System.out.println(food);
       String name=(String) session.getValue("username");
    %>
    你的名字是:<%=name%>
    你吃的是:<%=food%>
    </body>
    </html>
      

  3.   

    关于JSP中文问题精华区里有很多贴子,自己看看不久行了
      

  4.   

    你用的是tomcat还是resin?
    我试过了,没有乱码问题!
      

  5.   

    JSP中文问题精华区里有很多贴子
      

  6.   

    解决中文显示问题的几个方法:
    1.修改区域设置:在控制面版中选择区域设置,设为英语(美国), 然后重起。一切就都正常。 
    2.在jsp页中加入一条语句: 
    <%@ page contentType="text/html;charset=gb2312" %>中文显示就正常了。 
    3.在编译servlet和jsp时加入代码选项。编译servlet使用 
    javac -encoding iso8859_1 myservlet.java 
    在jsp的zone配置文件中.修改编译参数为: 
    compiler=builtin-javac -encoding ISO8859_1 
    使用这种方法后,不需要作其他的改动就可以正常显示中文了。 
    4.最土的办法,在servlet源程序中加入代码变换语句。如 
    String ls_name = request.getParameter("username"); 
    if(ls_name == null) ls_name = ""; 
    ls_name = new String(ls_name.getBytes("8859_1")); 
     
      

  7.   

    解决中文显示问题的几个方法:
    1.修改区域设置:在控制面版中选择区域设置,设为英语(美国), 然后重起。一切就都正常。 
    2.在jsp页中加入一条语句: 
    <%@ page contentType="text/html;charset=gb2312" %>中文显示就正常了。 
    3.在编译servlet和jsp时加入代码选项。编译servlet使用 
    javac -encoding iso8859_1 myservlet.java 
    在jsp的zone配置文件中.修改编译参数为: 
    compiler=builtin-javac -encoding ISO8859_1 
    使用这种方法后,不需要作其他的改动就可以正常显示中文了。 
    4.最土的办法,在servlet源程序中加入代码变换语句。如 
    String ls_name = request.getParameter("username"); 
    if(ls_name == null) ls_name = ""; 
    ls_name = new String(ls_name.getBytes("8859_1"));