본문 바로가기

Spring 정리/Spring MVC 5

프로젝트 세팅(pom.xml)

반응형

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)

웹  관련 요청에 대하여 동적인 처리를 도와주는 기술

 

Servlet API - javatpoint

 

www.javatpoint.com

 

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