OrderDetailAction
package net.macaronics.web.controll; import java.io.IOException; import java.util.ArrayList; import java.util.List; import javax.servlet.ServletException; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; import net.macaronics.web.controll.action.Action; import net.macaronics.web.dao.OrderDAO; import net.macaronics.web.dto.MemberVO; import net.macaronics.web.dto.OrderVO; public class OrderDetailAction implements Action{ private static final Logger logger =LogManager.getLogger(OrderDetailAction.class); @Override public void execute(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { String url ="mypage/orderDetail.jsp"; HttpSession session=request.getSession(); MemberVO loginUser=(MemberVO)session.getAttribute("loginUser"); if(loginUser==null){ url="MacaronicsServlet?command=login_form"; }else{ int oseq =Integer.parseInt(request.getParameter("oseq")); OrderDAO orderDAO =OrderDAO.getInstance(); List<OrderVO> orderList=orderDAO.listOrderById(loginUser.getId(), "%", oseq); logger.info(" OrderDetailAction - orderList {}" , orderList.toString()); int orderTotalPrice=0; OrderVO orderDetail =new OrderVO(); int i=0; for(OrderVO ovo : orderList){ orderTotalPrice =ovo.getPrice2()*ovo.getQuantity(); if(i==0){ orderDetail.setIndate(ovo.getIndate()); orderDetail.setOseq(ovo.getOseq()); orderDetail.setMname(ovo.getMname()); orderDetail.setPname(ovo.getPname() + " 외 " + orderList.size() + " 건"); } i++; } request.setAttribute("orderDetail", orderDetail); request.setAttribute("orderList", orderList); request.setAttribute("orderTotalPrice", orderTotalPrice); } request.getRequestDispatcher(url).forward(request, response); } }
mypage.jsp
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %> <%@ taglib prefix="fmt" uri="http://java.sun.com/jsp/jstl/fmt" %> <!DOCTYPE html> <html> <head> <jsp:include page="../include/Header.jsp" /> </head> <body> <jsp:include page="../include/HeaderMenu.jsp" /> <!-- catg header banner section --> <section id="aa-catg-head-banner"> <img src="/dailyShop/img/slider/4.jpg" alt="fashion img" height="300" style="margin-left: auto; margin-right: auto; display: block;"> <div class="aa-catg-head-banner-area"> <div class="container"> </div> </div> </section> <!-- / catg header banner section --> <!-- product category --> <section id="aa-product-category"> <div class="container"> <div class="row"> <div class="col-lg-9 col-md-9 col-sm-8 col-md-push-3"> <div class="aa-product-catg-content"> <h3 class="text-center">My Page (${title })</h3> <div class="aa-product-catg-body"> <div class="table-responsive"> <table class="table table-striped"> <tr class="danger"> <th>주문일자</th> <th>주문번호</th> <th>상품명</th> <th>결제 금액</th> <th>주문 상세</th> </tr> <tr> <c:forEach items="${orderList}" var="orderVO"> <tr> <td><fmt:formatDate value="${orderVO.indate }" type="date" /></td> <td>${orderVO.oseq }</td> <td>${orderVO.pname }</td> <td><fmt:formatNumber value="${orderVO.price2 }" type="currency" /></td> <td><a href="MacaronicsServlet?command=order_detail&oseq=${orderVO.oseq}" class="btn btn-warning">조회</a></td> </tr> </c:forEach> </tr> </table> </div> </div> <div class="text-center"> <input type="button" value="쇼핑 계속하기" class="btn btn-primary" onclick="location.href='MacaronicsServlet?command=index'" > </div> </div> </div> <div class="col-lg-3 col-md-3 col-sm-4 col-md-pull-9"> <aside class="aa-sidebar"> <!-- single sidebar --> <div class="aa-sidebar-widget"> <h3>나의 페이지</h3> <ul class="aa-catg-nav"> <li><a href="MacaronicsServlet?command=cart_list">장바구니(cart)내역</a></li> <li><a href="MacaronicsServlet?command=mypage">진행중인 주문내역</a></li> <li><a href="MacaronicsServlet?command=order_all">총 주문내역</a></li> </ul> </div> </aside> </div> </div> </div> </section> <!-- / product category --> <jsp:include page="../include/Footer.jsp" />
//주문 목록 불러오기 public List<OrderVO> listOrderById(String id, String result, int oseq){ List<OrderVO> orderList=new ArrayList<>(); try{ sqlSession =MybatisService.getFactory().openSession(); Map<String, Object> map =new HashMap<>(); map.put("id", id); map.put("result", result); map.put("oseq", oseq); orderList=sqlSession.selectList("order.listOrderById" , map); }catch(Exception e){ e.printStackTrace(); }finally{ MybatisService.sessionClose(sqlSession); } return orderList; }
<select id="listOrderById" resultType="net.macaronics.web.dto.OrderVO"> select * from order_view where id=#{id} and result like '%'||#{result} ||'%' and oseq=#{oseq} </select>
제작 : macaronics.net - Developer Jun Ho Choi
소스 : https://github.com/braverokmc79/jsp_sin
${request.getContextPath() } 처리를 안한 부분이 있으므로
루트 설정( http://macaronics.net/index.php/m01/jsp/view/1352) 및 server.xml 에서 DB 컨넥션 설정은 필수 설정이다.
댓글 ( 4)
댓글 남기기