스프링 MVC 연동에 대해서 포스팅해보도록 하겠습니다.
개발툴은 STS(Spring Tool Suite) 를 이용하겠습니다.
http://spring.io/tools/sts/all
해당 페이지로 이동하여 자신의 OS환경에 맞는 툴을 다운로드 받습니다.
저는 Windows 32bit 툴을 다운로드 받았습니다.
압축해제를 하도록 하겠습니다.
/sts-bundle/sts-3.x.x.RELEASE/
디렉토리에 들어가시면 STS 실행 프로그램이 있습니다.
실행!!!
Spring 프로젝트 진행시 인코딩을 UTF-8환경으로 진행할 예정이므로
제일먼저 STS(이클립스) 인코딩설정을 먼저 해줍니다.
① Window -> Preferences -> General -> Workspace의 Text encoding을 UTF-8로 변경해주십니다.
보통 Default로 MS949로 정의되어있어서 간혹가다 인코딩 문제가 발생하기 쉽기 때문입니다.
Other를 클릭하셔서 UTF-8로 입력해주시거나 selectbox로 선택 후 Apply 버튼을 클릭합니다.
② Window -> Preferences -> General -> Web 의 CSS,HTML,JSP 3개지 설정의 Encoding을 UTF-8로 변경해주십니다.
역시 이부분도 Apply 버튼 클릭!!
③ 마지막으로 Window -> Preferences -> General -> Contetn Types의 Text가 있습니다.
Text선택 후 Default encoding을 UTF-8이라고 입력 후 Update클릭합니다.
"OK" 버튼을 클릭하면 이클립스(STS)의 인코딩 설정은 마무리가 되었습니다.
본격적으로 프로젝트 생성하여 간단하게 Spring MVC 설정을 해보도록 하겠습니다.
※ Spring 프로젝트는 별도로 정의를 해주지 않아도 RESTFUL로 설정이 되어있으므로
"xxx.do"와 같은 확장자 지정을 해주지 않아도 됩니다.
① New -> Spring Project
② Project name 입력 -> Simple Projects(Simple Spring Web Maven) 선택 -> Select Spring version 선택(Default로 하여도 무관)
-> Finish 클릭
그럼 프로젝트 생성이 완료 되었습니다.
"Dynamic Web Project" 로 생성해도 무관하지만
라이브러리파일들을 일일이 모두 lib 디렉토리내에 넣어줘야하는 번거로움이 있어서
Maven으로 간편하게 라이브러리 관리 및 Spring 환경설정을 위하여
"Spring Web Maven" 프로젝트로 진행하도록 하겠습니다.
Spring 프로젝트 생성을 하였는데 Tomcat 에 Add가 되지 않을경우
생성프로젝트 우클릭 -> Maven -> Update Project 를 해주시면 됩니다.
이어서 Spring MVC 기본 설정을 위하여 프로젝트의 설정 부분을 수정해보도록 하겠습니다.
ⓐ /스프링프로젝트/src/main/webapp/WEB-INF/mvc-config.xml 코드 추가
<context:component-scan base-package="com.spring"/>
ⓑ /스프링프로젝트/src/main/java/ 내에 다음과 같이 패키지 구조를 생성하였습니다.
StudyController 클래스에 다음과 같이 코드작성을 해줍니다.
package com.spring.study.controller; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; @Controller public class StudyController { @RequestMapping("/hello") public String hello(){ return "hello"; } }
ModelAndview를 이용하여 return 페이지를 정해줄 수 있지만 String을 이용하여 return 페이지를 정의하도록 하겠습니다.
return "hello" 를 쉽게 이해해보시자면 mvc-config.xml에 정의되어있는 코드 중
<property name="prefix" value="/WEB-INF/view/"/> 라고 정의되어있는 코드가 있는데
저 디렉토리가 WEBROOT가 되는 것입니다.
return "hello"로 정의해주었다면 /WEB-INF/view/hello.jsp 페이지로 이동한다는 것입니다.
view디렉토리 경로에 hello.jsp페이지를 생성해보도록 하겠습니다.
default로 생성시 showMessage.jsp 가 존재하는데 삭제하셔도 됩니다.
hello.jsp를 생성하셨다면 body태그 부분에 테스트를 위하여 하단 코드를 작성합니다.
<h3>HELLO WORLD!!</h3>
톰캣을 실행 후 브라우저로 접속하기 전
server.xml 의 context path를 root경로로 잡아주도록 합니다.
앞으로 context root 기준으로 진행하도록 하겠습니다.
<Context docBase="spring_mvc" path="/spring_mvc" reloadable="true" source="org.eclipse.jst.jee.server:spring_mvc"/></Host>
<Context docBase="spring_mvc" path="/" reloadable="true" source="org.eclipse.jst.jee.server:spring_mvc"/></Host>
위 설정 까지 변경하셨다면 톰캣 서버를 실행 후 브라우저에 다음과 같이 입력합니다.
http://localhost:8080/hello
실행화면에서는 7070 포트로 호출을 하였는데 포트는 본인이 정한 포트로 실행하시면 되겠습니다.
정상적으로 결과가 출력되었습니다.
다음장에서는 spring mvc의 UTF-8 인코딩 설정을 해보도록 하겠습니다.
by 개발로짜
Spring3 Pathvariable 어노테이션을 이용하여 PARAMETER를 URL처럼 받아보기 (0) | 2014.11.11 |
---|---|
Spring3 jackson JSON 라이브러리 + ResponseBody 이용하여 JSON 파싱하기 (0) | 2014.11.10 |
Spring3 RESTFUL 방식 리소스파일 및 favicon 인식할수 있게 설정하기 (3) | 2014.11.07 |
Spring3 파일전송을 위한 multipartResolver 설정하기 (2) | 2014.11.07 |
Spring3 한글깨짐 방지를 위한 UTF-8 인코딩 설정하기 (6) | 2014.11.06 |