O'Reilly logo

JavaServer Pages, Second Edition by Hans Bergsten

Stay ahead with the world's most comprehensive technology and business learning platform.

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, tutorials, and more.

Start Free Trial

No credit card required

Chapter 18. Combining JSP and Servlets

As I described in the previous chapter, combining JSP with servlets lets you clearly separate the application logic from the presentation of the application; in other words, it lets you use the most appropriate component type for the roles of Model, View and Controller. To illustrate how a servlet can act as the Controller for an application -- using beans as the Model and JSP pages as Views -- we redesign the Project Billboard application from Chapter 12 in this chapter. Along the way, we look at how servlets and JSP pages can share data, how to deal with references between servlets and JSP pages in a flexible manner, how to use filters and listeners, and how to handle runtime errors consistently in an application that mixes these two technologies.

Java servlets offer a powerful API that provides access to all the information about the request, the session, and the application. If you’re not familiar with the Servlet API, I give you a crash course in the first section of this chapter. It’s just a brief introduction, but it should be enough to get you going and to understand the rest of this chapter. If you’re an old servlet pro, you may still want to scan through the last part of the introduction to see what the new Servlet 2.3 component types -- filters and listeners -- are all about. If you plan to make heavy use of servlets in your application, I recommend that you also read up on the details. Try Java Servlet Programming by Jason Hunter ...

With Safari, you learn the way you learn best. Get unlimited access to videos, live online training, learning paths, books, interactive tutorials, and more.

Start Free Trial

No credit card required