SPRING - 스프링MVC
- SPRING
- 2018. 2. 6. 15:49
먼저 스프링에서 MVC패턴을 사용하여 프로젝트를
만드려면 MVC프로젝트를 만들어야한다
생성방법은 아래와 같다
--
먼저 프로젝트의 구조는 아래와 같다
다음 컨트롤러 클래스를 생성해야한다.
최초 클라이언트로부터 요청이 들어왔을 때 컨트롤러로
진입하게 된다. 그리고 컨트롤러는 요청에 대한
작업을 한후 뷰쪽으로 데이터를 전달한다.
다음 @RequestMapping을 이요해 요청경로를 지정하고
요청처리 메소드를 구현후 뷰이름으로 리턴한다.
먼저 테스트를 해보자
HomeController에 @RequestMapping을
추가해 경로를 만든다
간단하게 3개만 만들어준다.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 | package com.spring.ex; import java.text.DateFormat; import java.util.Date; import java.util.Locale; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.servlet.ModelAndView; @Controller public class HomeController { private static final Logger logger = LoggerFactory.getLogger(HomeController.class); @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 ); 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; } } | cs |
42line의 Model model 은 Model이라는 객체를
파라미터로 받은것이다
컨트롤러에서 jsp(뷰)로 값을
뿌려줄때 사용한다.(데이터를 갖고있는객체 = model)
52line은 모델객체를 파라미터로 받지않고
ModelAndView 객체를 생성 한것이다.
다음 views 폴더안에 board폴더를 만든후
content, reply, view jsp 파일을 만들어준다.
1 2 3 4 5 6 7 8 9 10 11 12 13 | <%@ page language="java" contentType="text/html; charset=EUC-KR" pageEncoding="EUC-KR"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=EUC-KR"> <title>Insert title here</title> </head> <body> content.jsp 입니다. <br /> id : ${id} </body> </html> | cs |
다음 F11을 눌러 실행을 하는데
이클립스 내에서 웹브라우저를 실행시키려면
window탭에서 위와같이 설정하면 된다.
다음 주소를 바꿔줘야한다 그냥 실행시킨다면
정상적으로 화면이 나오지 않는다
위 이미지처럼 주소를 써줘야 정상적으로 출력이된다.
컨트롤러에서 리턴을할때 잡혀있는 기본
경로는WEB-INF/view 인데 servlet-context.xml에서 확인할수있다
--
'SPRING' 카테고리의 다른 글
SPRING - @RequestParam 어노테이션 (0) | 2018.02.06 |
---|---|
SPRING - HttpServletRequest 클래스 (0) | 2018.02.06 |
SPRING - AOP란? (0) | 2018.02.06 |
SPRING - 자바를 이용한 DI 설정 (0) | 2018.02.06 |
SPRING - DI의 장점 (0) | 2018.02.05 |