Spring 3 MVC HelloWorld 예제
Spring 3.0.1 Framework 테스트 환경 (Eclipse환경과 cafe24.com 웹호스팅 환경에서 테스트하여 성공함)
JDK 1.6
Tomcat 6.0
Eclipse Indigo ( with Spring Plugin )
Spring 3.0.1
JSTL.jar
Standard.jar
Eclipse에서 Spring 3기반으로 개발하여 cafe24.com호스팅 환경에 배포하는 경우 주의할 점
cafe24.com 호스팅 환경
- JDK 1.6
- Tomcat 6.0
로컬(Eclipse) 개발환경도 위와 동일하게 설정한 후에 개발하는 것이 기본
1. Eclipse에 Spring 3라이브러리 설정하고 개발을 마친 후에 Export 할 때 www.war 파일을 생성한다
2. 호스팅 환경의 Tomcat을 중지한다(shutdown.sh)
3. 기본으로 제공된 www 폴더를 www-bak 등으로 백업해둔다
4. 파일질라 등의 FTP 프로그램을 이용하여 개발한 war 파일을 www 폴더가 있던 곳으로 업로드한다
5. 호스팅 환경의 Tomcat을 다시 실행하면 업로드된 www.war 파일이 톰캣에 자동으로 배포된다
6. 호스팅 환경의 Tomcat을 다시 중지하고 업로드한 www.war 파일을 삭제한다
7. 호스팅 환경의 Tomcat을 다시 실행하고 웹브라우저로 접속하여 업로드한 프로그램을 테스트한다
Spring 3.0.1 Framework 에 포함되어 배포되는 라이브러리
org.springframework.aop-3.0.1.RELEASE-A.jar
org.springframework.asm-3.0.1.RELEASE-A.jar
org.springframework.aspects-3.0.1.RELEASE-A.jar
org.springframework.beans-3.0.1.RELEASE-A.jar
org.springframework.context-3.0.1.RELEASE-A.jar
org.springframework.context.support-3.0.1.RELEASE-A.jar
org.springframework.core-3.0.1.RELEASE-A.jar
org.springframework.expression-3.0.1.RELEASE-A.jar
org.springframework.instrument-3.0.1.RELEASE-A.jar
org.springframework.instrument.tomcat-3.0.1.RELEASE-A.jar
org.springframework.jdbc-3.0.1.RELEASE-A.jar
org.springframework.jms-3.0.1.RELEASE-A.jar
org.springframework.orm-3.0.1.RELEASE-A.jar
org.springframework.oxm-3.0.1.RELEASE-A.jar
org.springframework.spring-library-3.0.1.RELEASE-A.libd
org.springframework.test-3.0.1.RELEASE-A.jar
org.springframework.transaction-3.0.1.RELEASE-A.jar
org.springframework.web-3.0.1.RELEASE-A.jar
org.springframework.web.portlet-3.0.1.RELEASE-A.jar
Spring 3.0.1 Framework 외에 필요한 라이브러리
WEB-INF/web.xml
<?xml version="1.0" encoding="UTF-8"?> <web-app xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://java.sun.com/xml/ns/javaee" xmlns:web="http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd" id="WebApp_ID" version="2.5"> <display-name>Spring3MVC</display-name> <welcome-file-list> <welcome-file>index.jsp</welcome-file> </welcome-file-list> <servlet> <servlet-name>spring</servlet-name> <servlet-class> org.springframework.web.servlet.DispatcherServlet </servlet-class> <load-on-startup>1</load-on-startup> </servlet> <servlet-mapping> <servlet-name>spring</servlet-name> <url-pattern>*.do</url-pattern> </servlet-mapping> </web-app>
WebContent/WEB-INF/spring-servlet.xml
<?xml version="1.0" encoding="UTF-8"?> <beans xmlns="http://www.springframework.org/schema/beans" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:p="http://www.springframework.org/schema/p" xmlns:context="http://www.springframework.org/schema/context" xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-3.0.xsd http://www.springframework.org/schema/context http://www.springframework.org/schema/context/spring-context-3.0.xsd"> <context:component-scan base-package="spring3.test.controller" /> <bean id="viewResolver" class="org.springframework.web.servlet.view.UrlBasedViewResolver"> <property name="viewClass" value="org.springframework.web.servlet.view.JstlView" /> <property name="prefix" value="/WEB-INF/jsp/" /> <property name="suffix" value=".jsp" /> </bean> </beans>
WebContent/index.jsp
<%@ page language="java" contentType="text/html; charset=EUC-KR" pageEncoding="EUC-KR"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <title>Spring 3.0 MVC HelloWorld Example</title> </head> <body> <a href="hello.do">Say Hello</a> </body> </html>
HelloController.java
package spring3.test.controller; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.servlet.ModelAndView; @Controller public class HelloController { @RequestMapping("/hello") public ModelAndView helloWorld() { String message = "Hello World, Spring 3.0!"; return new ModelAndView("hello", "message", message); } }
WebContent/WEB-INF/jsp/hello.jsp
<%@ page language="java" contentType="text/html; charset=EUC-KR" pageEncoding="EUC-KR"%> <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <html> <head> <title>Spring 3.0 MVC HelloWorld Example</title> </head> <body> ${message} </body> </html>