스프링 MVC를 이용해서 웹 애플리케이션 개발을 할 수 있는데, 이번 시간에는 스프링 MVC에 대해서 알아봅시다.
웹 어플리케이션 개발을 위한 메이븐/그레이들 프로젝트는 웹을 위한 디렉터리 구조가 추가됩니다. 프로젝트를 생성했다면 그 하위에는 아래와 같이 폴더를 생성해 줍니다.
- src/main/java
- src/main/webapp
- src/main/webapp/WEB-INF
- src/main/webapp/WEB-INF/view
webapp 폴더는 HTML, CSS, JS, JSP 등 웹 애플리케이션을 구현하는데 필요한 코드가 위치합니다. WEB-INF에는 web.xml 파일이 위치합니다.
서블릿 스펙에 따르면 WEB-INF 폴더의 하위 폴더로 lib 폴더와 classes 폴더를 생성하고 각각의 폴더에 필요한 jar 파일과 컴파일된 클래스 파일이 위치해야 합니다. 하지만 메이븐이나 그레이들 프로젝트의 경우 필요한 jar 파일은 pom.xml/build.gradle 파일의 의존을 통해 지정하고 컴파일된 결과는 target 폴더나 build 폴더에 위치합니다. 때문에 WEB-INF 폴더 밑에 lib 폴더나 classes 폴더를 생성할 필요가 없습니다.
pom.xml를 보실까요?
<dependencies>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>javax.servlet-api</artifactId>
<version>3.1.0</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>javax.servlet.jsp</groupId>
<artifactId>javax.servlet.jsp-api</artifactId>
<version>2.3.2-b02</version>
<scope>provided</scope>
</dependency>
<dependency>
<groupId>javax.servlet</groupId>
<artifactId>jstl</artifactId>
<version>1.2</version>
</dependency>
<dependency>
<groupId>org.springframework</groupId>
<artifactId>spring-webmvc</artifactId>
<version>5.0.2.RELEASE</version>
</dependency>
</dependencies>
해당 의존성들은 스프링을 이용해서 웹 애플리케이션을 개발하는데 필요한 의존성 설정입니다. 서블릿 3.1, JSP 2.3, JSTL 1.2에 대한 의존을 추가했고 스프링 MVC를 사용하기 위해 spring-webmvc 모듈에 대한 의존을 추가했습니다.
이클립스 톰캣 설정하는 방법은 아래와 같습니다.
먼저, 이클립스에서 웹 프로젝트를 테스트하려면 톰캣이나 제티와 같은 웹 서버를 설정해야 합니다. 서블릿 3.1과 JSP 2.3 버전을 기준으로 톰캣 8/8.5/9 버전을 사용하면 됩니다.
톰캣 다운로드
https://tomcat.apache.org/download-80.cgi
- zip이나 tar.gz으로 압축된 톰캣 다운로드
맥 OS : Eclipse - 환경설정 - Server/Runtime Environments 선택 - Add
[이클립스 IDE 버전을 사용하시는 분이라면 EE 버전으로 다운로드하셔야 합니다. IDE 버전은 Server 기능을 제공하지 않는다고 합니다.]
저는 그래서 STS4를 다운로드해서 진행했습니다.
위 그림처럼 톰캣 서버 실행환경 설정을 추가합니다.
이번시간에는 Spring MVC를 실습해 보기 위한 환경설정 및 의존설 설정을 해주었습니다.
'Spring' 카테고리의 다른 글
[Spring] 스프링 MVC - 컨트롤러 구현 해보기 (0) | 2024.03.25 |
---|---|
[Spring] 스프링 MVC 설정 (0) | 2024.03.25 |
[Spring] @EnableTransactionManagement 주요속성과 트랜잭션 전파 (0) | 2024.03.06 |
[Spring] @Transactional 속성 (0) | 2024.03.04 |
[Spring] @Transactional 적용 메서드 롤백 처리 (0) | 2024.03.04 |