시소당
본 튜토리얼은 제가 Struts 2를 공부할 목적으로 아래의 원문에 링크된 문서를 번역하여 정리한 것입니다.
원문:
http://www.roseindia.net/struts/struts2/struts-2-features.shtml
Struts 2 프레임워크는 개발,구현,유지보수의 전체 소프트웨어 개발 사이클을 위해 디자인되었습니다.
프레임워크를 구성하는 각각의 클래스들은 인터페이스에 기반을 두고 있기 때문에 매우 큰 확장성을 가지며 모든 기본 클래스들은
특별한 기능을 가지고 있고 당신이 원하는 기능을 추가할 수도 있습니다. 요구되는 기본 플랫폼 요구사항으로는 Servlet API
2.4, JSP API 2.0, Java 5가 있습니다.
아파치 스트러츠 2 프레임워크의 몇개의 일반적인 특징은 아래와 같습니다.
Architecture우
선 웹브라우저가 리소스를 요청하면 Filter Dispatcher는 적절한 액션을 결정합니다. 그리고 나서
Interceptors는 요구된 함수들을 사용하고 난 후 Action 메서드는 데이터베이스 저장과 조회 등의 데이터베이스 관련
작업을 수행합니다. 그리고 나서 실행결과는 HTML, PDF, 이미지 혹은 그밖의 다른 것으로 변환되어 브라우저에 출력됩니다.
TagsStruts 2의 태그는 보다 적은 코딩으로 동적 웹 어플리케이션을 생성하도록 도와줍니다.
이
태그들은 데이터 출력뿐아니라 마크업을 다룰 수 있는 스타일 시트를 제공하며 이것은 보다 적은 코드를 가지고 페이지를 생성할 수
있도록 도와줍니다. 태그는 보다 유용한 코딩의 validation과 localization을 지원합니다. 보다 적은 양의 코드는
또한 가독성을 좋게 하고 유지보수를 쉽게 만듭니다.
MVC스트럿츠 2 프레임워크에서의
Model View Controller는 어플리케이션의 model과 웹 view 사이에서 조정자의 역할을 합니다. 스트럿츠 2의
컨트롤러와 뷰 컴포넌트는 모델을 구현하기 위한 다른 기술과 함께 사용될 수 있습니다. 프레임워크는 역동적인 데이터를 표현하기
위한 라이브러리와 마크업테그를 가집니다.
Configuration리소스를 초기화하기 위한 배치디스크립터는 XML 포맷으로 제공됩니다.
이
러한 초기화는 자바 패키지들을 사용하여 모든 클래스들을 스캐닝함으로써 단순화시키거나 전체 설정을 제어하기 위한 어플리케이션 설정
파일을 사용할 수 있습니다. 다용도의 기본값은 스트럿츠가 직접적으로 Out of the Box를 사용하도록 허락합니다.
설정 파일들은 웹 컨테이너를 재시작하지 않고도 변경이 적용되어 다시 로딩됩니다.
다른 특징들* 모든 프레임워크 클래스는 인터페이스를 기반으로 하고 있고 핵심 인터페이스는 HTTP와 독립적이다.
* 체크박스들은 거짓값을 위한 어떠한 종류의 특별한 응용도 요구하지 않는다.
* 어떠한 클래스라도 액션 클래스로서 사용될 수 있고 하나의 클래스는 자바빈을 사용하여 액션 클래스에 직접적으로 프라버티를 입력할 수 있습니다.
* 스트럿츠 2 액션들을 Spring과 친화적이기 때문에 통합하기 쉽습니다.
* AJAX 테마는 어플리케이션을 보다 역동적으로 만들어 줄 수 있습니다.
* 자동화된 포틀릿이 코드변경없이 지원되므로 포탈과 서블릿 개발이 쉽습니다.
* 필요하다면 모든 액션의 request 처리를 커스터마이징 하기가 쉽습니다.
출처 : http://jedison.tistory.com/60