페이지

2008년 9월 21일 일요일

1.3 스트럿츠 2 프레임워크

Struts 2 is a brand new, state of the art web application framework. As we said ealier, Strtuts2 is not just a new release of the older Struts 1 framework. It is a completely new framework, based on the architecturally esteemed WebWork framework. By now you should be pretty tuned in to what a web application framework should offer. In terms of the common domain tasks, Struts2 covers the domain quite well. It handles all of the tasks we have identified, and more. During the course of the book, you will learn how to work with the features that address each of those tasks in turn, At the introductory stage fo things, it makes more sense to focus on the architectuarl aspects of the framework. So in this section, we will look at the dsign pattern roots of Struts 2, see how those roots influence the high level architectu4re, and take a slightly more detaied look at how the framework handles actual request processing.

1.3.1 간단한 역사
Struts 2 is a second generation web application framework that implements the Mdel-View-Controller(MVC) desing patten. Struts 2 is built form the ground up on best practices and proven, community accepted design patterns. This was true for the first version of Struts as well. In fact, one of the primary goal of the first Struts was the incorporation of the Model-View-Controller(MVC)pattern into a web application framework. This was, of course, a critical step in th evolutino of well designed web applications as it provided th infrastructure of making the MVC separeation fo concerns n easily achived goal. This allowed developers, with little resources for such architectural niceties, to tap into a ready made best practice solution. Struts 1 can certainly claim responsibility for many of the more well designed web applications of the lkast ten years.

At some point, the Struts community became aware of the limitations in the first framework. With such an active community, identification of the weak and inflexible points in to present a cleaner implementation of MVC. At the same time, it intruduces serverl new architectural features that make the framework cleaner and more flexible. These new features include such thisng as interceptors for layering cross cutting concerns away from action logic, annotation based configuration to reduce classpath pollution, a powerful expression language OGNL that transverses the en