Bigfat

[Spring] 스프링 프로젝트 생성 및 웹 애플리케이션 실행하기 본문

Java/web

[Spring] 스프링 프로젝트 생성 및 웹 애플리케이션 실행하기

kyou 2017. 4. 17. 20:08

스프링 MVC 프로젝트 생성하고 웹 페이지를 띄워보자

  스프링 프레임워크 공식사이트(https://spring.io/)에서 STS(Spring Tool Suite)를 다운받자. 이클립스에서도 플러그인을 설치해 개발할 수 있지만 STS가 가볍다고 한다. Index of release/org/springframework/spring을 확인하면 이때까지 릴리즈된 스프링 버전들의 문서나 라이브러리들을 다운받을 수 있다. 다운받은 STS를 압축 해제하고, sts-3.8.4.RELEASE폴더에서 STS.exe를 실행한다.

  STS가 실행되면 File > New > Spring Legacy Project를 선택하면 아래와 같은 창이 열린다. Project name을 기입하고 템플릿(Templates)를 Spring MVC Project를 선택한다.


  패키지명은 3depth 이상만 가능하다.


  pom.xml을 열어 Java와 Spring 버전을 변경하였다. progress창을 보면 스프링의 4.3.7.RELEASE 버전을 받아오는 것을 확인할 수 있고, 문제없이 수행되었다면 OK를 출력해준다.

<properties>
	<java-version>1.8</java-version>
	<org.springframework-version>4.3.7.RELEASE</org.springframework-version>
	<org.aspectj-version>1.6.10</org.aspectj-version>
	<org.slf4j-version>1.6.6</org.slf4j-version>
</properties>


  똑같이 pom.xml에서 servlet 버전과 <artifactId> 값을 변경하였다. 메이븐(Maven)은 자동으로 프로젝트 관리 도구로 빌드를 자동화해주는 빌드 툴이다. 메이븐 리퍼지토리(https://mvnrepository.com/)에서 필요한 API들을 검색해 아래와 같이 의존성(dependency)을 추가해 사용할 수 있다.

<!-- Servlet -->
<!-- https://mvnrepository.com/artifact/javax.servlet/javax.servlet-api -->
<dependency>
    <groupId>javax.servlet</groupId>
    <artifactId>javax.servlet-api</artifactId>
    <version>3.1.0</version>
</dependency>


  이제 프로젝트 > properties > Project Facets를 선택해 Java와 Dynamic Web Module(Servlet) 버전을 맞춰준다.


  서버는 톰캣 서버로 웹 애플리케이션 실행하기에서 생성했던 방법과 동일하므로 작성하지 않는다. Pivotal tc Server보다는 Tomcat Server를 사용하도록 하자.


  이제 프로젝트를 톰캣으로 실행하고(Run As > Run on Server), http://localhost/bbs로 접속하면 너무나도 친숙한 'Hello World!'가 브라우저로 출력되는 것을 확인할 수 있다.


  컨트롤러는 워크스페이스명/프로젝트명/src/main/java/패키지명(3depth)/ 아래의 경로에 위치해있고, 뷰는 워크스페이스명/프로젝트명/src/main/webapp/WEB-INF/views/ 아래에 위치해있다. 기존의 프로젝트에서는 WebContent가 프로젝트 경로의 루트(/)인 반면에 스프링 프로젝트에서는 webapp프로젝트의 루트가 된다. js, css, 이미지 등을 /resources에 넣어두도록 한다.