直接贴代码(只贴有用的):
selfOrder.jsp:
<title>个人订单查询</title>
<td width="100"><div align="center"><a href="selectOrder">查看订单</a></div></td> <table border="solid 1px;">
<tr><td>订单id</td>
<td>真实姓名</td>
<td>详细住址</td>
<td>邮编</td>
<td>发货状态</td>
<td>查看子订单</td>
</tr>
<c:forEach var="order" items="${list}">
<tr>
<td>${order.orderId}</td>
<td>${order.recvName}</td>
<td>${order.user.address}</td>
<td>${order.user.postcode}</td>
<td>${order.flag}</td>
<td><a href="son?id=${order.orderId}">查看</a></td>
</tr>
</c:forEach>
</table>
SelectOrder.java:public class SelectOrder extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String name = (String) request.getSession().getAttribute("name");
ModelOrder model = new ModelOrder();
List list = model.selectOr(name);
System.out.println(list.size());
request.getSession().setAttribute("list", list);
response.sendRedirect("selfOrder.jsp");
}OrderDAOImpl.java:
public List selectOrder(String name) {
List list = new ArrayList();
Order or = null ;
DbUtil dao = new DbUtil();
PreparedStatement pre = null;
ResultSet re = null;
String sql = "select * from tb_order where name=?";
try {
pre = dao.getCon().prepareStatement(sql);
pre.setString(1, name);
re =pre.executeQuery();
while(re.next()){
or = new Order ();
User user = new User();
or.setOrderId(re.getInt("orderId"));
user.setName(re.getString("name"));
or.setRecvName(re.getString("recvName"));
user.setAddress(re.getString("address"));
user.setPostcode(re.getString("postcode"));
user.setEmail(re.getString("email"));
or.setUser(user);
or.setOrderDate(re.getString("orderDate"));
or.setFlag(re.getInt("flag"));
list.add(or);
}
} catch (SQLException e) {
e.printStackTrace();
}
return list;
}问题是session里的name好像没传过去,System.out.println(list.size());Console输出为0
selfOrder.jsp:
<title>个人订单查询</title>
<td width="100"><div align="center"><a href="selectOrder">查看订单</a></div></td> <table border="solid 1px;">
<tr><td>订单id</td>
<td>真实姓名</td>
<td>详细住址</td>
<td>邮编</td>
<td>发货状态</td>
<td>查看子订单</td>
</tr>
<c:forEach var="order" items="${list}">
<tr>
<td>${order.orderId}</td>
<td>${order.recvName}</td>
<td>${order.user.address}</td>
<td>${order.user.postcode}</td>
<td>${order.flag}</td>
<td><a href="son?id=${order.orderId}">查看</a></td>
</tr>
</c:forEach>
</table>
SelectOrder.java:public class SelectOrder extends HttpServlet { public void doGet(HttpServletRequest request, HttpServletResponse response)
throws ServletException, IOException {
String name = (String) request.getSession().getAttribute("name");
ModelOrder model = new ModelOrder();
List list = model.selectOr(name);
System.out.println(list.size());
request.getSession().setAttribute("list", list);
response.sendRedirect("selfOrder.jsp");
}OrderDAOImpl.java:
public List selectOrder(String name) {
List list = new ArrayList();
Order or = null ;
DbUtil dao = new DbUtil();
PreparedStatement pre = null;
ResultSet re = null;
String sql = "select * from tb_order where name=?";
try {
pre = dao.getCon().prepareStatement(sql);
pre.setString(1, name);
re =pre.executeQuery();
while(re.next()){
or = new Order ();
User user = new User();
or.setOrderId(re.getInt("orderId"));
user.setName(re.getString("name"));
or.setRecvName(re.getString("recvName"));
user.setAddress(re.getString("address"));
user.setPostcode(re.getString("postcode"));
user.setEmail(re.getString("email"));
or.setUser(user);
or.setOrderDate(re.getString("orderDate"));
or.setFlag(re.getInt("flag"));
list.add(or);
}
} catch (SQLException e) {
e.printStackTrace();
}
return list;
}问题是session里的name好像没传过去,System.out.println(list.size());Console输出为0
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货