日期:2014-05-19  浏览次数:20859 次

在servlet里面setAttribute以后为什么在jsp里面getAttribute为null?
Servlet
Java code
String Sno = request.getParameter("Sno");
        String Sname = com.data.StudentData.STUDENT_MAP.get(Sno).getSname();
        String Classno = com.data.StudentData.STUDENT_MAP.get(Sno).getClassno();
        request.setAttribute(Sno, "Sno");
        request.setAttribute(Sname, "Sname");
        request.setAttribute(Classno, "Classno");
        RequestDispatcher rd = request.getRequestDispatcher("/view.jsp");
        rd.forward(request, response);

JSP
Java code
<%
    String Sno = (String)request.getAttribute("Sno");
    String Sname = (String)request.getAttribute("Sname");
    String Classno = (String)request.getAttribute("Classno");
%>
<body>
    <h1>成绩查询</h1> <br>
    <h2>学生学号:<%=Sno%></h2>
    <h2>学生姓名:<%=Sname%></h2>
    <h2>学生班级:<%=Classno%></h2>
  </body>

以上是部分源代码,在servlet里面可以显示Sno,Sname,Classno,但是传到JSP不知道为什么就是null了,如果在JSP里三个都用getParameter,就只能获得sno,请问我到底哪里做错了?

------解决方案--------------------
request.setAttribute(Sno, "Sno");弄反了,是request.setAttribute("Sno", Sno);这样。