'Framework'에 해당되는 글 1건
- 2012.02.20 스트럿츠란??
스트럿츠란? MVC패턴을 지원하는 웹 어플리케이션 프레임워크를 말한다. 웹 어플리케이션을 기능 및 모듈 단위로 분리하여 확장성을 높이고 유지보수를 용이하게 해준다. 스트럿츠 이외에도 스프링, 아이바티스(IBATIS), 타일즈(TILES) 등이 있다.
스트럿츠2는 웨 워크와 스트럿츠가 결합한 형태의 프레임워크다.
-서블릿 방식을 사용하던 기존의 스트럿츠와는 달리 스트럿트2 에서는 필터방식을 사용.
-Action을 부를 POJO(Plan Old Java Object)로 구현할 수 있음.
말로 설명을 거창아게 했지만 그림을 보면서 설명을 하자면.
스트럿츠는 설정파일인 Web.xml이외에도 struts.xml이라는 설정파일을 갖는다.
Web.xml은 URL관련하여 설정을 하는 파일이다. web.xml설정을 잘못한다면 아얘 익스플로러에서 응답을 하지 못한다.
반면에 struts.xml은 액션에 대한 전반적인 관리를 하는 파일이다. 액션이란 웹페이지 상에서 다음페이지로 넘어갈 떄 이루어지는 행동의 명령이라고 할 수 있다.
그림을 보고 설명을 한다면!!
웹페이지 상에서 사용자의 요청(액션)이 이루어지면 xml파일에서 액션명을 확인하고 자바클래스파일을 호출하고 파일내의 메서드(비지니스 로직)를 호출한다. 호출 후 자바에서 이루어진 작업을 기반으로 reslut페이지를 xml로 부터 정보를 받아 view페이지(jsp페이지)를 호출한다.
이 구조만 이해한다면 스트러츠의 반을 알고 있다고 해도 과언이 아닌것 같다. 처음에 이 구조를 이해햐기는 힘들겠지만 이 그림을 반복해서 보면 이해가 빠를 것이다.
다시 한번 설명하자면
- 사용자가 서버측으로 요청하면 http://localhost:9000/HelloWorld.action 과 같은 URL로 요청이 넘어온다.
- 스트럿츠 2에서는 환경설정파일을 참조(ref)하여 넘어온 요청을 어떤 액션으로 처리하는지 결정한다.
- 액션이 결정되었으면 비즈니스 로직을 호출하여 요청에 대한 작업을 수행하고 그 결과를 다시 스트럿츠로 넘겨준다.
- 비즈니스 로직으로부터 결과를 받아온 스트럿츠는 환경설정파일을 참조(ref)하여 로직이 처리한 결과물과 매치되는 적합한 출력물(리절트)을 선택한다.
- 적합한 리절트가 선택되었으면 해당하면 jsp파일 뷰 페이지를 사용자의 웹 브라우저에 띄워준다.