Model 1 architecture is one of the initial architecture styles used to develop Java-based web applications. A few important details are as follows:
- Java Server Pages (JSP) pages handle directly the requests from the browser.
- JSP pages make use of the model containing simple Java beans.
- In some applications of this architecture style, JSPs even perform queries to the database.
- JSPs also handle the flow logic—which page to show next.
The following diagram represents a typical Model 1 architecture:
There are a lot of disadvantages associated with this approach, leading to quick shelving and the evolution of other architectures. A few important disadvantages are listed as follows:
- Hardly any separation of concerns: JSPs are responsible for retrieving data, displaying data, deciding which pages to show next (flow), and sometimes, even business logic as well.
- Complex JSPs: Because JSPs handle a lot of logic, they are huge and difficult to maintain.