어노테이션을 이용하여 4~5줄 내외의 controller 클래스를
BoardController 클래스로 통합한다
package com.springbook.view.board;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.servlet.ModelAndView;
import com.springbook.biz.board.BoardVO;
import com.springbook.biz.board.impl.BoardDAO;
@Controller
public class BoardController {
//글등록
@RequestMapping(value=“/insertBoard.do”)
public String insertBoard(BoardVO vo,BoardDAO boardDAO) {
System.out.println(“글 등록 처리”);
boardDAO.insertBoard(vo);
return “getBoardList.do”;
}
//글수정
@RequestMapping(“/updateBoard.do”)
public String updateBoard(BoardVO vo, BoardDAO boardDAO, ModelAndView mav) {
boardDAO.updateBoard(vo);
return “getBoardList.do”;
}
//글 삭제
@RequestMapping(“/deleteBoard.do”)
public String deleteBaord(BoardVO vo,BoardDAO boardDAO) {
boardDAO.deleteBoard(vo);
return “getBoardList.do”;
}
/*클라이언트로 부터 /deleteBoard.do 요청이 들어오면 deleteBoard()메소드가 실행되며
* 이 때 삭제에 필요한 게시글 번호는 매개변수로 선언된 BoardVO 객체를 통해 받아낸다. 그리고 BoardDAO객체의 deleteBoard()
* 메소드를 호출하여 글삭제를 처리한 후에 getBoardList.do를 리턴하여 글 목록 화면으로 이동한다. */
//글 상세 조회
@RequestMapping(“/getBoard.do”)
public ModelAndView getBoard(BoardVO vo, BoardDAO boardDAO, ModelAndView mav) {
mav.addObject(“board”, boardDAO.getBoard(vo));//Model정보 저장
mav.setViewName(“getBoard.jsp”);//view정보 저장
return mav;
}
//글 목록 검색
@RequestMapping(“/getBoardList.do”)
public ModelAndView getBoardList(BoardVO vo , BoardDAO boardDAO ,ModelAndView mav) {
System.out.println(“글 목록 검색 처리”);
mav.addObject(“boardList”, boardDAO.getBoardList(vo)); // Model 정보 저장
mav.setViewName(“getBoardList.jsp”); // View 정보 저장
return mav;
}
}