원본 : http://dasida.tistory.com/1017790
이런식으로 대충 떠넘기는거닷... -_-;
정말 이분 설명 잘해놨습니다.
이분덕분에 helloworld 성공..ㅠ.ㅠ
1. 개요
우리는 Hello SpringFramework ! 를 웹상에 찍는 application 을 만들 것입니다.
기존의 방법과 지금 진행하려 하는 방법에 대해서 간단히 나열해 보았습니다.
Before 와 After 로 확인해주세요..
BEFORE
tomcat was에서 프레임워크없이 구현할경우에는 webapps 에 web application디렉토리 생성후
index.jsp 에 내용을 기술
AFTER
Spring Framework 를 이용합니다.
이중 Spring MVC 를 이용할것이구요..
브라우저상에서 요청은 이런형태로 되겠네요..
webapp 이름은 springapp 으로 하겠습니다.
EX )
1. 브라우저 요청 http://localhost:80/springapp/hello.do
2. spring MVC Dispatcher Servlet
3. 해당 simplecontroller 에서 ModelAndView return
4. 실제 jsp 페이지 접근
5. 사용자 브라우저에 html형태로 출력
좀더 알기쉽게 사진을 인용하겠습니다.
아래 사진은 http://springframework.org에서 가져온것입니다.
참조 URL : http://static.springframework.org/spring/docs/2.0.x/reference/mvc.html
그럼 해야할 작업은 무엇일까요??
1. Spring.jar 파일 준비
http://springframework.org/download/download.html 에서 파일을 다운받습니다..
압축을 풀어보면 dist 폴더안에 spring.jar 파일이 있습니다.
이를 WEB-INF/lib 폴더에 import 로 집어 넣습니다.
2. VIew 작성
hello.jsp 를 작성합니다.
경로는 springapp/WEB-INF/jsp/hello.jsp
일반사용자는 요청을 통해 접근할수 없는 폴더 아래에 놓음으로서.. *.do 의 요청으로 들어왔을경우에만
View를 볼수있게되지요.
자 이제 tomcat을 올리고 브라우저에서 테스트를 해보겠습니다.
7. Test
네.. 잘 뜨는군요 ^^;
이런식으로 대충 떠넘기는거닷... -_-;
정말 이분 설명 잘해놨습니다.
이분덕분에 helloworld 성공..ㅠ.ㅠ
1. 개요
우리는 Hello SpringFramework ! 를 웹상에 찍는 application 을 만들 것입니다.
기존의 방법과 지금 진행하려 하는 방법에 대해서 간단히 나열해 보았습니다.
Before 와 After 로 확인해주세요..
BEFORE
tomcat was에서 프레임워크없이 구현할경우에는 webapps 에 web application디렉토리 생성후
index.jsp 에 내용을 기술
AFTER
Spring Framework 를 이용합니다.
이중 Spring MVC 를 이용할것이구요..
브라우저상에서 요청은 이런형태로 되겠네요..
webapp 이름은 springapp 으로 하겠습니다.
EX )
1. 브라우저 요청 http://localhost:80/springapp/hello.do
2. spring MVC Dispatcher Servlet
3. 해당 simplecontroller 에서 ModelAndView return
4. 실제 jsp 페이지 접근
5. 사용자 브라우저에 html형태로 출력
좀더 알기쉽게 사진을 인용하겠습니다.
아래 사진은 http://springframework.org에서 가져온것입니다.
참조 URL : http://static.springframework.org/spring/docs/2.0.x/reference/mvc.html
그럼 해야할 작업은 무엇일까요??
- Spring.jar 파일준비
- hello.jsp (View) 파일 기술
- web.xml (Deployment Descriptor) 에 Spring dispatcher Servlet 기술
- spring-servlet.xml ( Spring Beans 설정) 기술
- MVC Controller Class SpringAppController.java 기술 .
1. Spring.jar 파일 준비
http://springframework.org/download/download.html 에서 파일을 다운받습니다..
압축을 풀어보면 dist 폴더안에 spring.jar 파일이 있습니다.
이를 WEB-INF/lib 폴더에 import 로 집어 넣습니다.
2. VIew 작성
hello.jsp 를 작성합니다.
경로는 springapp/WEB-INF/jsp/hello.jsp
일반사용자는 요청을 통해 접근할수 없는 폴더 아래에 놓음으로서.. *.do 의 요청으로 들어왔을경우에만
View를 볼수있게되지요.
<html>
<head><title>Spring Application</title></head>
<body>
<h1>Hello Spring SpringFramework !!</h1>
<h3>hello.jsp - > hello.do </h3>
</body>
</html>
3. 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>*.do</url-pattern>
</servlet-mapping>
<welcome-file-list>
<welcome-file> index.jsp </welcome-file>
</welcome-file-list>
</web-app>
3번째 라인에 보시면 Spring Dispatcher servlet 설정 부분이 있습니다..
기본적인 URL mapping은 .do 입니다.
4. Controller class 작성
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 {
return new ModelAndView("/WEB-INF/hello.jsp");
}
}
Controller 인터페이스를 구현한 클래스입니다.
ModelAndView 객체를 리턴하고 있군요.
스트럿츠의 액션클래스와 비슷하지요?? 스트럿츠의 경우는 findforward 를 하고
struts-config.xml 에 해당 Action forward를 찾아 해당 view로 Dispatch Action 이 일어나게되지요..
스프링의 경우도 비슷합니다. 관련 설정파일에 url-mapping 하는 부분이 존재합니다.
5. Spring Beans 설정파일 기술
경로 : /springapp/WEB-INF/springapp-servlet.xml
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN" "http://www.springframework.org/dtd/spring-beans.dtd">
<beans>
<bean id="springappController" class="SpringappController"/>
<bean id="urlMapping" class="org.springframework.web.servlet.handler.SimpleUrlHandlerMapping">
<property name="mappings">
<props>
<prop key="/hello.do">springappController</prop>
</props>
</property>
</bean>
</beans>
SpringappController 클래스를 bean 으로 지정하고대충 감이 잡히시는지요 ?
URL Mapping 을 /hello.do 로 지정하였습니다.
여기서 주의할점은.. web.xml 에서 Springframework dispatcher servlet 설정한부분 있죠?
거기에서 설정한 servlet name을 따라간다는것입니다..
위에서 web.xml에는 다음과 같이 설정하였습니다.
<servlet-name>springapp</servlet-name>
물론 다른경로에 설정파일을 위치시킬수도 있으나 별다른 설정을 하지않았을 경우
WEB-INF/${servlet-name}-servlet.xml 이란 파일을 찾게됩니다.
고로 경로는 /WEB-INF/springapp-servlet.xml 으로 해주어야 Application Context 설정파일을 잘 읽습니다.
6. 최종 점검.
Eclipse IDE를 사용하였을 경우 디렉토리 구조는 아래와 같은 형태가 되겠네요.
자 이제 tomcat을 올리고 브라우저에서 테스트를 해보겠습니다.
7. Test
네.. 잘 뜨는군요 ^^;
'개발 > Framework || Lib' 카테고리의 다른 글
step by step1-1 (0) | 2007.10.03 |
---|---|
스프링 servlet.xml 유용한 부분 (0) | 2007.10.03 |
Spring 공부하는중 db에 관하여 (0) | 2007.10.02 |
Struts 한글 싸이트~ (0) | 2007.09.10 |
자바지기 Spring framework 워크북 (3) | 2007.09.07 |
댓글