Struts – Struts Introduction…

Struts is a mature open source MVC(Model-View-Controller) frame work for web applications. With Struts we can easily integrate various technologies like J2EE , Hibernate, iBATIS, JSTL and JSF, Velocity Templates, XSLT etc. Apart from being a framework Struts also provides utilities and custom tags to cut down development time.

Struts is a very popular framework and has now become a de-facto standard for Java applications. The reasons for this popularity are given below

Advantages of Struts

Advantage MVC

Struts imposes the MVC framework so that no body goes off loop and does his own non standard implementation. Before Struts MVC implementations were development team’s perception of MVC which lead to lots of confusion, errors and increased the learning curve for that implementation. With Struts this human element is gone and a standard process of MVC is imposed on the developers

Advantage ConfigurationsStruts works completely on configurations in XML and property files rather than hard coding the components in the Java code. All the elements like Controller actions, redirects, validations, exceptions can be incorporated by configurations and can be easily tracked at a later stage.

Advantage Utilities

Struts provides lots of utilities derived from Apache Commons to make our life easier like ready made Form Beans for request parameters, Validation controls and Custom tags

Disadvantages of Struts

Disadvantage Performance

Frameworks mean bigger call stacks due to various function calls which results in lesser performance. However this is a performance sacrifice is offset by major advantage of standardized development process advantage.

Disadvantage Beginners

Though this is not an issue with experienced developers, the new developers have a bigger learning curve. The documentation at Apache is mostly targeted at the experienced audience.

Disadvantage Imposing

If you want to use Struts then you will have to just follow the rules set by this framework. Going in a different way is pretty tedious.

Disadvantage Small Programs

Struts is not always useful for a smaller programs because there is no point in wasting time on various Struts configurations when you can write your program in a jiffy. The program requirements should be carefully evaluated before using Struts.


Leave a Reply

Fill in your details below or click an icon to log in: Logo

You are commenting using your account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s