今天下午写了一个简单的学生管理系统来练习java web相关的知识,但是在loginServlet里面登录成功后,要把学生信息查询并且存储到session中
if(flag){
//查询所有的学生信息
stusDao stus = new stusDaoImpl();
List<Student> list = stus.findAll();
//将学生信息存储到作用域中,目前我存储到session中
request.getSession().setAttribute("list", list);
//重定向跳转到指定页面
response.sendRedirect("stu_list.jsp");
然后再另一个stu_list.jsp页面中显示
jsp页面代码如下(报错的)
<c:forEach items="${sessionScope.list } " var="stu">
<tr align="center">
<td>${stu.id }</td>
<td>${stu.name }</td>
<td>${stu.gender }</td>
<td>${stu.age }</td>
<td>${stu.address }</td>
</tr>
</c:forEach>
报错说javax.el.PropertyNotFoundException: Property [id] not found on type [java.lang.String]
也就是获取不到list对象,所以找不到int........就是因为上面多了个空格(很弱智的错误!)
<c:forEach items="${sessionScope.list }" var="stu">
正确的应该是这个,在jstl的forEach里,items里面应该是EL表达式,而且不能有空格!!!!!!