@RequestMapping(value = "/{database}/{pageNum}", method = RequestMethod.GET) @Transactional public String imageBoard( @PathVariable("database") String database, @PathVariable("pageNum") int pageNum, Model model) { ImageBoardImp imageBoardImp = sqlSession.getMapper(ImageBoardImp.class); ReplyImp replyImp = sqlSession.getMapper(ReplyImp.class); ArrayList<ImageBoard> arrImageBoard = new ArrayList<ImageBoard>(); ArrayList<Reply> arrReply = new ArrayList<Reply>(); ArrayList<String> arrImageStream = new ArrayList<String>(); if (pageNum == 0) { pageNum = 1; } // DB에서 List 개수 파악 int pageSize = 10; // 가지고 올 개수 int count = 0; try { count = imageBoardImp.getImageBoardHighestNum(database); } catch (Exception e) { count = 0; } int start = (pageNum - 1) * pageSize; int maxPageNum = imageBoardImp.getImageBoardCount(database); if ((maxPageNum % MAX_PAGEZIE) > 0) { maxPageNum = maxPageNum / pageSize + 1; } else { maxPageNum = maxPageNum / pageSize; } System.out.println(start); System.out.println(start + pageSize); arrImageBoard = imageBoardImp.listImageBoardPaging(database, start, pageSize); arrReply = replyImp.getReplyByUpDown(BoardList.getReplyTableName(database), 100, 102); try { arrImageStream = encodingImage(arrImageBoard, database); System.out.println("encodingImage success"); } catch (Exception e) { System.out.println("encodingImage error"); e.printStackTrace(); } Iterator<ImageBoard> iterator = arrImageBoard.iterator(); int count_1 = 0; while (iterator.hasNext()) { iterator.next().setBase64Encoded(arrImageStream.get(count_1++)); } System.out.println("size : " + arrImageBoard.size()); System.out.println(arrImageBoard.get(0).getUsername()); System.out.println(arrImageBoard.get(0).getContent()); model.addAttribute("maxPageNum", maxPageNum); model.addAttribute("pageNum", pageNum); model.addAttribute("database", database); // model.addAttribute("arrImageStream", arrImageStream); model.addAttribute("arrImageBoard", arrImageBoard); model.addAttribute("arrReply", arrReply); return "imageboard/imageGallery"; }