스트러츠는 프로그래머에게 자연스럽게 MVC 모델2를 적용하여 작업할 수 있도록 가이드라인을 제공해 준다. 물론 프로그래머가 MVC 개념을 명확하게 이해하고 MVC 패턴에 맞춰서 코딩을 한다는 전제하해서 말이다.

스트러츠는 MVC 패턴 중 컨트롤러와 뷰를 커버한다. 컨트롤러와 관련되어 익혀두어야 하는 부분은 우선 web.xml에서 컨트롤러인 ActionServlet을 설정하는 것인데 디렉터리 맵핑과 확장자 맵핑의 두가지 방법이 있다. 그리고 struts-config.xml에서 폼빈(form-beans)과 액션맵핑(action-mappings), 메시지 리소스(message-resources), 컨트롤러(controller), 플러그인(plug-in) 설정을 익혀두어야 한다.

일단 스트러츠를 익히기위한 시작으로는 폼빈과 액션맵핑, 메시지 리소스 설정 익히면 족하고 이어서 폼의 입력 데이터 검증을 위한 validator 프레임을 적용하는 방법을 순서대로 익혀나가는 것이 좋을 것 같다.

스트러츠의 컨트롤러는 뷰(view)에 해당하는 폼(form)과 모델(model)과 통신하는 액션(action)을 컨트롤하는 정보를 담고 있는 struts-config.xml 설정파일과 다수의 액션(action)들로 구성되어 있다.

그리고 컨트롤러와 함께 또하나의 구조인 폼은 액션폼(ActionForm)을 상속받거나 직접 사용하여 만들어지는데 ActionForm과 DynaActionForm, LazyActionForm의 3가지로 구성되어 있다. ActionForm은 프로그래머가 폼빈을 구성하고 validate() 메서드와 reset() 메서드를 직접 구현하여야 하며 DynaActionForm과 LazyActionForm의 경우 폼빈을 자동으로 생성해 주어 프로그래머가 코딩으로 구현하는 것이 아니라 xml파일에 태그를 선언하여 선언적으로 구현하도록 해준다. 결론적으로 액션폼의 주요 기능이 폼의 입력 데이터의 검증과 초기화를 구현하는 것인데 이를 프로그램 작성이 필요없이 컬럼과 조건을 선언하여 프로그래밍이 필요없이 자동으로 작성할 수 있도록 해줌으로써 스트러츠의 안전성을 그대로 프로그래머의 솔류션이 이어받을 수 있도록 해준다. 프로그램 작성을 최소화하여 프로그래머에 의한 버그를 최소화하고 작업의 흐름(work flow)에 집중하여 응용프로그램(application)을 제작하도록 해준다. 스트러츠와 같은 프레임워크가 제공하는 잇점인 것이다.

+ Recent posts