Apache Struts 2 is a free, open-source, MVC framework for
creating elegant, modern Java web applications. It favors convention over
configuration, is extensible using a plugin architecture, and ships with
plugins to support REST, AJAX and JSON.
One way to separate concerns in a software application is to use a Model-View-Controller (MVC) architecture. The Model represents the business or database code, the View represents the page design code, and the Controller represents the navigational code. The Struts framework is designed to help developers create web applications that utilize a MVC architecture.
The framework is designed to streamline the full development cycle, from building, to deploying, to maintaining applications over time.
Struts 2 was originally known as WebWork 2. After working independently for several years, the WebWork and Struts communities joined forces to create Struts 2. The 2.x framework is the best choice for teams who value elegant solutions to difficult problems.