2013년 8월 15일 목요일

Hello Spring 확장하기

spring.jar 파일은 http://www.springframework.org/download.html 에서 최신 버전을 받으시면 됩니다.

오라클자바커뮤니티에서 설립한  개발자중심! 오엔제이프로그래밍 실무교육센터
(신입사원채용무료교육, 오라클, SQL, 튜닝, 자바, 스프링, Ajax, jQuery, 안드로이드, 아이폰, 닷넷, C#, ASP.Net)   www.onjprogramming.co.kr
 
다운 받으신 후 spring-framework-1.2.X/dist/spring.jar 파일을 WEB-INF/lib 폴더에 복사하세요~   복사 후 Eclipse에서 jar 파일을 lib에 추가해주세요~(프로젝트에 마우스 우측 버튼 누른 후 속성선택 후 Java Build Path LIBRARY에서 AddJAR에서 추가)
 
-------------------------------------------------------------------
1.     springapp아래 JSP 폴더를 만든 후 include.jsp 아래와 같이 작성 합니다. 모든 JSP파일에서 JSTL을 사용하기 위해 include되는 Header 파일 입니다.
이번엔 JSTL을 사용해 볼텐데 jstl을 사용하기 위해 http://www.apache.org/dist/jakarta/taglibs/standard/ 에서 jakarta-taglibs-standard-current.zip 파일을 다은 받은 후 jstl.jar, standard.jar 파일을 /WEB-INF/lib 폴더에 복사 합니다. 물론 Eclipse에서 Library 등록해야 겠죠
-------------------------------------------------------------------
 
[jsp/include.jsp]
<%@ page session="false"%>
<%@ taglib prefix="c" uri="http://java.sun.com/jstl/core" %>
<%@ taglib prefix="fmt" uri="http://java.sun.com/jstl/fmt" %>
 
--------------------------------------------------------------------
2.     index.jsp를 다음과 같이 수정 합니다.
--------------------------------------------------------------------
 
[index.jsp]
<%@ include file="/WEB-INF/jsp/include.jsp" %>
<%--Redirected because we can't set the welcome page to a virtual URL.--%>
<c:redirect url="/hello.htm"/>
 
-------------------------------------------------------------
3.     View 역할을 하는 hello.jsp를 다음과 같이 개선 합니다.
-----------------------------------------------------------------
 
우선 hello.jsp jsp 폴더아래로 이동시켜 다음과 같이 작성 합니다.
 
[hello.jsp]
<%@ include file="/WEB-INF/jsp/include.jsp" %>
<html>
<head>
<title>Hello :: Spring Application</title>
</head>
<body>
<h1>Hello - Spring Application</h1>
<p>방가와요! 현재 시각 : <c:out value="${now}"/></p>
</body>
</html>
 
-------------------------------------------------------------------
4.     Controller 역할을 하는 SpringappController.java를 다음처럼 수정 합니다.
--------------------------------------------------------------------
 
[SpringappController.java]
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 java.io.IOException;
 
public class SpringappController implements Controller {   
                 
             public ModelAndView handleRequest(HttpServletRequest request, HttpServletResponse response)           
                         throws ServletException, IOException {       
                         String now = (new java.util.Date()).toString();  
                         
        //now 라는 이름으로 현재시간을 담고 있는 객체를 메모리에 저장 합니다.
                 //이것을 View 역할을 하는 JSP(hello.jsp)에서 사용 합니다.
        return new ModelAndView("/jsp/hello.jsp", "now", now);
    }
}
 
-------------------------------------------------------------------
5.     참고로 WEB-INF아래의 web.xml은 다음과 같습니다.
-------------------------------------------------------------------
 
[web.xml]
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE web-app PUBLIC '-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN' 'http://java.sun.com/dtd/web-app_2_3.dtd'><web-app>  <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>

댓글 없음:

댓글 쓰기