2020. 9. 27. 17:39ㆍProgramming Language/JAVA
■ Struts2 Framework 란?
MVC패턴을 지원하는 오픈소스의 웹 어플리케이션 프레임워크입니다.
* MVC 패턴
모델(Model), 뷰(View), 컨트롤(Control)의 세 영역으로 나누고 이들의 결합도를 최소화하는 것을 말합니다. 또한 MVC 패턴으로 웹 어플리케이션을 개발하게 될 경우 가장 큰 장점은 실제 업무를 처리하는 비즈니스 로직과 화면을 처리하는 프레젠테이션 로직을 분리해서 작업이 가능하다는 것입니다.
■ Struts1 과 Struts2의 차이점은?
Struts2는 Struts 와 웹워크가 결합한 형태이며, Struts2는 Struts의 서블릿 방식에서 필터 방식으로의 변화와 Action부분이 POJO(Plain Old Java Object)로 구현할 수 있게 되었습니다. 또한 XML 기반의 환경 설정, 태그 라이브러리 지원, 국제화 지원 등 다양한 유틸리티들을 제공하도록 발전했습니다.
■ Struts2의 특징
1. 완전히 새로운 프레임워크
- 스트럿츠 때와는 다른 웹워크2의 MVC 아키텍처 채용
2. 직관적인 개발
- POJO 기반 액션(Action)
3. 제로 컨피규레이션 지향
- 기본 값 지원으로 많은 설정 생략 가능
- 어노테이션 사용으로 설정 파일에서 설정 생략
4. 신속한 리로딩
- 변경된 환경 설정 파일의 내용을 웹 컨테이너 재시작 없이 리로드
5. POJO 액션, POJO 폼
- 프레임워크에 종속되지 않음
6. 손쉬운 Ajax(Asynchronous Javascript And XML) 구현
- Dojo 프레임워크 포함
- Ajax 테마 지원 태그
7. 다양한 표현식 언어 EL(Expression Language) 지원
- JSTL(Jsp Standard Tag Library) 사용 가능
- OGNL(Object Graph Navigation Language) 지원
8. 다양한 리절트 타입의 지원 및 프로파일링
- JSP 외에 프리마커(Freemarker), 밸로시티(Velocity) 등의 사용 가능
- 요청 처리 과정 프로파일링
9. 의존성 주입 지원
- 구글 주스(Google Guice) 프레임워크를 사용하여 프레임워크 내부 핵심 객체의 라이프 사이클 관리
'Programming Language > JAVA' 카테고리의 다른 글
[Framework] 영속성 프레임워크(persistence framework) (0) | 2020.10.06 |
---|---|
[JAVA] 서블릿(Servlet) 정리 (0) | 2020.09.27 |
[JAVA] 아이바티스 프레임워크(iBatis Framework) 정리 (0) | 2020.09.27 |
[JAVA] 스프링 프레임워크(Spring Framework) (0) | 2020.09.26 |
[JAVA] 프레임워크(Framework)와 라이브러리(Library)의 차이 (0) | 2020.09.24 |