MVC - Struts

The Model-View-Controller approach is already rather old in IT (if anything can be old it IT at all ! )

It is a natural way of working: it is based on the concept of separation of responsibilities, i.e.: business logic (model), presentation of data (view) and controll of flow and interaction (controller). It is an approach that every project leader / programmer should use in larger projects (but little do ! ).

The Apache implementation of MVC is Struts (there are several others). The additional advantage of Struts (besides separation of responsibilities) is that one can (but is not obliged to) write Java Server Pages (JSP's) without having to write a single line of Java code in the JSP's.

The Model - View - Controller (MVC) concept

Instead, JSP custom tags (in XML) are used. This makes the JSP much better readable and understandable, and contributes further to separation of responsibilities (the JSP editor only needs to write XML).

The use of MVC is especially rewarding in large projects where a whole team is working on the application. Each team member can fully exploit his/her competences without having to wait for other members (the plumber-who-is-waiting-for-the-carpenter-who-is-waiting-for-the-plumber syndrome).

Struts can be used together or independent from J2EE.

Computer Chemistry Consultancy, August 2002