A brief history of Web MVC
It may seem strange to discuss the Model-View-Controller (MVC) paradigm in a historical context, as a majority of web applications still use this technology today. The MVC design pattern first came to prominence in the early 2000's with the open source Struts framework. This framework encouraged the use of MVC architecture to promote a clear demarcation of responsibilities when processing and serving requests. The MVC paradigm for server-side Java development has been around ever since in a variety of formats, culminating in the well-designed and powerful Spring MVC framework.
The rationale for using an MVC approach is quite simple. The web layer implementing interactions between the clients and the application can be divided into the following three different kinds of objects:
Model objects that represent the data
View objects that have the responsibility of displaying the data
Controller objects that respond to actions and provide model data for the view object to...