DispatcherServlet
- Servlet/JSP에서 사용자 요청이 발생하면, 이 요청 정보를 해석하고 개발자가 만든 코드를 동작시키는 첫 번째 서블릿
- Sprinv MVC에서는 DispatcherServlet을 확대하여 Spring Framework가 가지고 있는 기능을 사용 할 수 있도록
이 클래스를 재정의한다.
- 따라서, Spring MVC 프로젝트 설정에서 가장먼저 해야하는 것은 DispatcherServlet 클래스를
Spring MVC에서 재정의한 클래스로 설정하는 일이다.
<Spring MVC 프로젝트 설정 방법>
1. XML 이용 2. Java코드 활용
<Spring MVC 프로젝트를 위한 pom.xml 설정>
1. servlet-api (https://www.javatpoint.com/servlet-api)
웹 관련 요청에 대하여 동적인 처리를 도와주는 기술
2. jsp-api
java 언어를 기반으로 웹 서비스를 제공하기 위해 만든 기술(EL, JSTL등이 있기 때문에 servlet보다 다양한 기능이 있다.)
* tomcat, jetty 같은 WAS에는 jsp-api interface들이 정의되어 있으나 Spring MVC는 jsp-api를 포함하지 않기 때문에 따로 임포트를 해주어야 한다.
3. jstl (jsp standard tag library)
if문, 출력문, 변수선언 등의 기능들을 JSP에서 사용할 수 있도록 표준으로 모아둔 라이브러리
cf) EL (Expression Language)
EL은 JSP 2.0 스펙에 추가 된 개념으로, JSP의 기본 문법을 보완하여 값을 간단히 표현하는데 사용하는 스크립트 언어
//일반 JSP 사용
<% = test %>
//EL 사용
${test}
4. springWebMVC
spring framework가 제공하는 web, aop, bean, context 기능 사용
mvnrepository를 이용해서 maven에 의존성 추가 후 pom.xml 수정
<!-- 라이브러리 버전관리 -->
<properties>
<javax.servlet-version>4.0.1</javax.servlet-version>
<javax.servlet.jsp-version>2.3.3</javax.servlet.jsp-version>
<javax.servlet.jsp.jstl-version>1.2</javax.servlet.jsp.jstl-version>
<org.springframework-version>5.2.2.RELEASE</org.springframework-version>
<!-- <org.springframework-version>4.3.25.RELEASE</org.springframework-version> -->
</properties>
<!-- 라이브러리 셋팅 -->
<dependencies>
<!-- https://mvnrepository.com/artifact/javax.servlet/javax.servlet-api -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>${javax.servlet-version}</version>
<scope>provided</scope>
</dependency>
<!-- https://mvnrepository.com/artifact/javax.servlet.jsp/javax.servlet.jsp-api -->
<dependency>
<groupId>javax.servlet.jsp</groupId>
<artifactId>javax.servlet.jsp-api</artifactId>
<version>${javax.servlet.jsp-version}</version>
<scope>provided</scope>
</dependency>
<!-- https://mvnrepository.com/artifact/javax.servlet.jsp.jstl/jstl -->
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
<version>${javax.servlet.jsp.jstl-version}</version>
</dependency>
<!-- https://mvnrepository.com/artifact/org.springframework/spring-webmvc -->
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>${org.springframework-version}</version>
</dependency>
</dependencies>
- 라이브러리 버전관리
라이브러리 버전관리는 <properties>에서 한다. 각 <dependecies> 내용에 있는 version을 따로 쉽게 관리한다.
- 라이브버리 셋팅
${라이브러리 groupdId+"-version"}으로 <version>을 업데이트하여 4개를 추가한다.
'Spring > Spring MVC 5' 카테고리의 다른 글
파라미터에 객체를 주입받기 (0) | 2020.05.25 |
---|---|
파라미터 추출하기 (0) | 2020.05.25 |
URL Mapping (0) | 2020.05.24 |
프로젝트설정(not Xml, but Java) (0) | 2020.05.24 |
프로젝트 세팅(web.xml, servlet-context.xml) (0) | 2020.05.24 |