챕터1. 기본 어플리케이션과 환경설정하기.
1.1 프로젝트 생성하기
이클립스에서 Project -> New -> Dynamic Web 으로 하나 생성하자.
이름은 springapp로.
1.2 index.jsp 파일 만들기.
/WebContent 폴더에 어플리케이션의 시작점이 되는 index.jsp 파일을 만든다.
마우스 오른쪽 버튼 클릭 -> New -> JSP - > 파일이름입력 (index) -> Finish
파일내용은 그냥 간단한 프린트용으로.
<html> <head><title>Example :: Spring Application</title></head> |
/WEB-INF 폴더에 web.xml 파일 생성
(이클립스는 프로젝트 생성시에 자동으로 생성하므로, 수정할 필요 없음)
<?xml version="1.0" encoding="UTF-8"?> <web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" > <welcome-file-list> <welcome-file> index.jsp </welcome-file> </welcome-file-list> </web-app> |
1.3 톰캣에서 실행해보기.
원본내용에서는 Ant를 이용해서 Deploy를 하지만, 이클립스에서 톰캣을 연결해놓은 관계로 직접 Run On Server로 실행해본다.
http://localhost:8080/springapp/index.jsp
제대로 나오면 패-쓰.
----------------------------
자. 이제 스프링 설정차례.
----------------------------
1.5 스프링 프레임웍 다운하기
http://www.springframework.org/download 에서 스프링을 다운받는다.
1.6 web.xml 파일 수정하기.
처음에 만들어놨던 web.xml 파일을 스프링을 사용할 수 있도록 DispatcherServlet 를 설정해준다.
여기서는 htm확장자로 넘어오는 request들은 모두 스프링을 타도록 함.
<?xml version="1.0" encoding="UTF-8"?> <web-app version="2.4" xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" > <servlet> <servlet-name>springapp</servlet-name> <servlet-class>org.springframework.web.servlet.DispatcherServlet</servlet-class> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>springapp</servlet-name> <url-pattern>*.htm</url-pattern> </servlet-mapping> <welcome-file-list> <welcome-file> index.jsp </welcome-file> </welcome-file-list> </web-app> |
web.xml을 수정한뒤, /WEB-INF 폴더에 springapp-servlet.xml 파일을 생성한다.
bean과 해당 class를 매핑하는 부분을 설정한다.
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.5.xsd"> <!-- the application context definition for the springapp DispatcherServlet --> <bean name="/hello.htm" class="springapp.web.HelloController"/> </beans> |
1.7 관련된 lib파일 복사하기.
spring을 사용하기 위한 라이브러리 파일들을 /WEB-INF/lib 폴더에 복사한다.
spring.jar (spring-framework-2.5/dist 폴더)
spring-webmvc.jar (spring-framework-2.5/dist/modules 폴더)
commons-logging.jar (spring-framework-2.5/lib/jakarta-commons 폴더)
1.8 Controller 만들기.
컨트롤러로 사용할 클래스를 만든다. 샘플에서는 HelloController이라는 이름의 클래스.
/src 폴더에서 마우스 오른쪽 버튼클릭 -> New -> Class -> 패키지명 (springapp.web) -> 클래스명 (HelloController)
-> 인터페이스 부분에서 Add클릭 -> org.springframework.web.servlet.mvc.Controller 선택 -> Finish
package springapp.web; import org.springframework.web.servlet.mvc.Controller; import org.springframework.web.servlet.ModelAndView; import javax.servlet.ServletException; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import org.apache.commons.logging.Log; import org.apache.commons.logging.LogFactory; import java.io.IOException; public class HelloController implements Controller { protected final Log logger = LogFactory.getLog(getClass()); public ModelAndView handleRequest(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException { logger.info("Returning hello view"); return new ModelAndView("hello.jsp"); } } |
위 소스는, request를 받아서 ModelAndView 타입을 리턴하는 간단한 컨트롤러이다.
ModelAndView가 리턴될때, 톰캣 콘솔에 info가 찍힘.
1.9 Controller 테스트유닛 만들기.
테스트유닛을 만들기 위해서 /WEB-INF/lib 폴더에 junit 라이브러리 복사한다. (spring-framework-2.5/lib/junit 폴더)
테스트를 하기 위한 HelloControllerTests.java 파일 생성
package springapp.web; import org.springframework.web.servlet.ModelAndView; import springapp.web.HelloController; import junit.framework.TestCase; public class HelloControllerTests extends TestCase { public void testHandleRequestView() throws Exception{ HelloController controller = new HelloController(); ModelAndView modelAndView = controller.handleRequest(null, null); assertEquals("hello.jsp", modelAndView.getViewName()); } } |
1.10 View 생성하기
hello.jsp 파일 생성
<html> <head><title>Hello :: Spring Application</title></head> <body> <h1>Hello - Spring Application</h1> <p>Greetings.</p> </body> </html> |
1.11 컴파일 및 어플리케이션 실행하기
원문에서는 Ant에서 컴파일. Deploy 하는 방법에 대해 설명하고 있다.
1.12 브라우저로 확인하기
http://localhost:8080/springapp/hello.htm
원본 : http://static.springframework.org/docs/Spring-MVC-step-by-step/part1.html
'Spring' 카테고리의 다른 글
[Spring] Quartz 스케줄링 (0) | 2011.10.26 |
---|---|
[Spring] AOP (Aspect Oriented Programming) (0) | 2011.10.25 |
[Spring] Wiki_Technical Report (0) | 2011.09.07 |
[Spring] Spring 정리 파일 (0) | 2011.03.08 |
[Spring] Spring? (0) | 2010.12.08 |