List list = new ArrayList();
while(rs.next()){
Book book = new Book();
book.setId(rs.getInt("id"));
book.setName(rs.getString("name"));
book.setPrice(rs.getDouble("price"));
book.setCount(rs.getInt("count"));
book.setAuthor(rs.getString("author"));
list.add(book);
}
request.setAttribute("list", list);
request.getRequestDispatcher("book_list.jsp").forward(request, response);
<%
List list = request.getAttribute("list");
if (list == null || list.size() out.print("没有数据");
}else{
for(Book book:list){
%>
<%=book.getId()%>
<%=book.getName()%>
<%=book.getPrice()%>
<%=book.getCount()%>
<%=book.getAuthor()%>
<%
}
}
%>
名称为FindServlet的Servlet的对象将Book集合放置到request中转发到book_list.jsp中,在book_list.jsp中获取Book集合时报错。提示Book cannot be resolved to a type。
应该在jsp页面上写<%@page import="xxx.Book"%>
都忘了jsp怎么写java代码了,是不是没导包
JSP 本质会被编译成 Java class 的,所以在 JSP 的命令标签里面写 Java 代码,必须 import 导入引用的类的包。
这个错误就是没有导入类导致的,跟写普通 Java 代码的错误是一样的。
使用request.getParameter("") 不使用request.getAttribute("list"); 试下,取参数