디지털 컨버전스/Spring
[Spring Framework] Spring MVC
gimyeondong
2020. 5. 27. 16:06
웹 환경
mvc2의 구조
Spring MVC
- Dispatcher servlet : 프론트컨트롤러 처럼 제어를 담당
초기 버전
Dispatcher servlet가 핸들러맵퍼한테 어디로 보낼지 물어봄 -> 인스턴스를 알려줌 -> 디스패처가 해당 컨트롤러에 요청
my batis : 동적쿼리를 만들기 쉽해 해주는 프레임워크
service 레이어 :
기능 하나마다 컨트롤러 만드는 것은 예전 방식
web.xml 톰캣이 가동되면 제일 먼저 실행
<!-- The definition of the Root Spring Container shared by all Servlets and Filters -->
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/spring/root-context.xml</param-value>
</context-param>
1. 다른 XML(root-context.xml)을 가동해라 > 비어있음
<!-- Processes application requests -->
<servlet>
<servlet-name>appServlet</servlet-name>
<servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class>
<init-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/spring/appServlet/servlet-context.xml</param-value>
</init-param>
<load-on-startup>1</load-on-startup>
</servlet>
2. DispatcherServlet 생성, (servlet-context.xml) 가동
핸들러 맵퍼의 역할 수행
package kh.spring.controller;
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;
//@component
//@Controller
//@Service
//@Repository
// http://IPaddress:8080/
@Controller
public class HomeController {
@RequestMapping("/")
public String home() {
return "home";
}
}