Struts is an application framework based on the Model-View-Controller design pattern. In a Struts application, a controller decides what actions to take and where to pass control based on the results of validating form data through an ActionForm and applying business logic found in the Action.
In addition, Struts offers a customer tag library that allows many common JSP tasks, such as iterating over a collection to be replaced with a single tag.
There's no question that in some places it's appropriate and desirable to use an MVC design, such as the one that Struts offers. It gives you centralized control of your URLs, helps separate your business logic from the JSP display code, and promotes code reuse.
On the other hand, it can be extremely ...