[ Team LiB ] Previous Section Next Section

Web Application Architecture

When considering how to construct an application, you must decide how to divide up responsibilities and how the pieces will interact with one another. In a Web application, that means that you'll assign work to static HTML pages, JSPs, servlets, and other objects. The container and application server will pitch in and take care of some things for you.

You want applications that are useful, easy to construct, and maintainable. Because requirements or uses seem to always change, you're also interested in software that is flexible or extensible.

The trick in building software that does all of this for you is to properly delegate the work to the right components. For example, presenting static content to the client can be accomplished using a plain HTML page or a servlet or JSP. Writing a servlet to do this is more work than you need to do and makes the application complex.

Also, you probably recognize that, in the workplace, employees are often assigned tasks that make the best use of their skills. From a business perspective, it's useful to design software so that the work can be divided into parcels that are completed by employees whose training and talents are appropriate to the tasks. One of the objectives of the JSP and servlet specifications is to make it possible to neatly divide the labor between graphics designers who work on the presentation and programmers who define the behavior of an application.

The specifications for JSPs and servlets have been designed with all of these things in mind. With the release of JSP 2.0, it's even easier to build applications that approach the goals.

    [ Team LiB ] Previous Section Next Section