Model View Controller (MVC)
In MVC controller handles the user request instead of another JSP. The controller is implemented as a Servlet.
Model 1 Architecture
In Model 1, the browser directly accesses
JSP pages. In other words, user requests are handled directly by the JSP.
Consider a HTML page with a hyperlink to a JSP. When user clicks on the
hyperlink, the JSP is directly invoked.
The servlet container parses the JSP and executes the resulting Java servlet.
In addition it contains logic to connect to the middle tier or directly to the
database using JDBC to get the additional data needed to display the page.
Disadvantage with Model 1 Architecture
1) Java code (business logic)is in JSP page so maintenance is difficult.
2) Application control is decentralized in Model 1 architecture since the next
page to be displayed is determined by the logic embedded in the current page.
Model 2 Architecture - MVC
In MVC controller handles the user request instead of another JSP. The controller is implemented as a Servlet.
The following steps are executed when the user submits the request.
1. The Controller Servlet handles the user’s request.
2. The Controller Servlet then instantiates appropriate JavaBeans based on the
request parameters.
3. The Controller Servlet then communicates with the middle tier or directly to the database to fetch the
required data.
4.The Controller sets the resultant JavaBeans ( results from database) in one of the following contexts – request, session or application.
4. The controller then forward or redirect to different JSP show result data.