@Override public String execute(Map<String, String[]> params, Map<String, Object> model) throws Exception { logger.info("성적 목록 가져오기....."); int pageNo = 1, pageSize = 3; try { pageNo = Integer.parseInt(params.get("pageNo")[0]); } catch (Exception e) { } try { pageSize = Integer.parseInt(params.get("pageSize")[0]); } catch (Exception e) { } int countAll = scoreDao.countAll(); int totalPage = countAll / pageSize; if ((countAll % pageSize) > 0) { totalPage++; } String order = null; if (params.get("order") != null) { order = params.get("order")[0]; model.put("order", order); model.put("scores", scoreDao.list(pageNo, pageSize, order)); } else if (params.get("columnName") != null) { // 클라이언트로부터 정렬할 컬럼이름과 정렬 타입을 입력 받아 실행한다. // * 안전하지 않은 방법 String columnName = params.get("columnName")[0]; String orderType = params.get("orderType")[0]; model.put("scores", scoreDao.list(pageNo, pageSize, columnName, orderType)); // */ } else { model.put("scores", scoreDao.list(pageNo, pageSize, null)); } model.put("totalPage", totalPage); model.put("pageNo", pageNo); model.put("pageSize", pageSize); return "/score/step08/ScoreList.jsp"; }
@Override protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { int no = Integer.parseInt(request.getParameter("no")); try { ServletContext ctx = this.getServletContext(); ScoreDao scoreDao = (ScoreDao) ctx.getAttribute("scoreDao"); Score score = scoreDao.selectOne(no); response.setContentType("text/html; charset=UTF-8"); RequestDispatcher rd = request.getRequestDispatcher("/score/step04/scoreupdateform.jsp"); request.setAttribute("score", score); rd.include(request, response); } catch (Exception e) { RequestDispatcher rd = request.getRequestDispatcher("/score/step04/error"); request.setAttribute("error", e); rd.forward(request, response); } }
@Override protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { Score score = new Score(); score.setNo(Integer.parseInt(request.getParameter("no"))); score.setName(request.getParameter("name")); score.setKor(Integer.parseInt(request.getParameter("kor"))); score.setEng(Integer.parseInt(request.getParameter("eng"))); score.setMath(Integer.parseInt(request.getParameter("math"))); ServletContext ctx = this.getServletContext(); ScoreDao scoreDao = (ScoreDao) ctx.getAttribute("scoreDao"); try { scoreDao.update(score); response.sendRedirect("list"); } catch (Exception e) { RequestDispatcher rd = request.getRequestDispatcher("/score/step04/error"); request.setAttribute("error", e); rd.forward(request, response); } }