소스코드 다운받기

12-1 컨트롤러 클래스 제작

  • 클래스 제작 순서
    1. @Controller를 이용한 클래스 생성
    2. @RequestMapping을 이용한 요청 경로 지정
    3. 요청 처리 메서드 구현
    4. 뷰 이름 리턴
// 예제 12_1_ex 1
// HomeController.java

// 1. 이 클래스는 컨트롤러로 사용되는 클래스다!
@Controller
public class HomeController {
	
	private static final Logger logger = LoggerFactory.getLogger(HomeController.class);

    // 2. "/" 로 url 요청이 들어오면 이 메서드를 실행시켜라 -> 3. 메서드 실행
	@RequestMapping(value = "/", method = RequestMethod.GET)
	public String home(Locale locale, Model model) {
		logger.info("Welcome home! The client locale is {}.", locale);
		
		Date date = new Date();
		DateFormat dateFormat = DateFormat.getDateTimeInstance(DateFormat.LONG, DateFormat.LONG, locale);
		
		String formattedDate = dateFormat.format(date);
		
		model.addAttribute("serverTime", formattedDate );
		
        // 4. 뷰 이름 리턴
		return "home";
	}
	
	@RequestMapping("/board/view")
	public String view() {
		
		
		return "board/view";
	}
	
	@RequestMapping("/board/content")
	public String content(Model model) {
		
		model.addAttribute("id", 30);
		return "board/content";
		
	}
	
	@RequestMapping("/board/reply")
	public ModelAndView reply() {
		
		ModelAndView mv = new ModelAndView();
		mv.addObject("id", 30);
		mv.setViewName("board/reply");
		
		return mv;
	}
	
}

12-2 요청 처리 메서드 제작

  • 뷰페이지 이름 생성방법
  • prefix + 요청처리 메서드 반환값 + suffix

12-3 뷰에 데이터 전달

public String content(Model model){

    // id라는 이름으로 뷰에 데이터를 전달하고 있다
    model.addAttribute("id", 30);
    return "board/content";
}
  • 뷰에서는 el 문법으로 전달받은 데이터를 사용가능 ${id}

참고자료