JSP model 2 architecture
In the design of Java Web applications, there are generally used two design models called Model 1 and Model 2. Model 1 is simpler and only recommended for small applications. Model 2 discussed here is recommended for medium- and large-sized applications. It is based on the Model-View-Controller (MVC) design pattern to separate presentation from content.
ava developers generally use two design models in Web applications, simply called Model 1 and Model 2. Both are in use today, but Model 2 is recommended for medium- and large-sized applications or applications that will grow in complexity in the future. I'll discuss the Model 2 architecture and the Model-View-Controller design pattern on which Model 2 is based. I'll also explain why Model 2 is the recommended design and show you a sample application that implements this model.
The Model 2 architecture, shown in Figure 2, is a hybrid approach for serving dynamic content, since it combines the use of both servlets and JSP. It takes advantage of the predominant strengths of both technologies, using JSP to generate the presentation layer and servlets to perform process-intensive tasks. Here, the servlet acts as the controller and is in charge of the request processing and the creation of any beans or objects used by the JSP, as well as deciding, depending on the user's actions, which JSP page to forward the request to. Note particularly that there is no processing logic within the JSP page itself; it is simply responsible for retrieving any objects or beans that may have been previously created by the servlet, and extracting the dynamic content from that servlet for insertion within static templates. In my opinion, this approach typically results in the cleanest separation of presentation from content, leading to clear delineation of the roles and responsibilities of the developers and page designers on your programming team. In fact, the more complex your application, the greater the benefits of using the Model 2 architecture should be.
http://www.javaworld.com/javaworld/jw-12-1999/jw-12-ssj-jspmvc.html by Govind Seshadri
http://www.fawcette.com/javapro/2002_06/online/servlets_06_11_02/