Put Shared Page Elements in Separate Files
Most web sites need to maintain a consistent look and layout for all web pages, typically with a common header, footer, and navigation menus, as well as color and font choices. For a static site, site development tools typically let you apply a common template that provides this look and feel to all pages, but they are often not up to the task if the shared parts are dynamic (e.g., a navigation menu hides or exposes submenus depending on the selected page).
Creating the layout and shared content for the first page and then copying it for all the other pages—just changing the main content part—is, of course, one way to provide a consistent look for all pages in an application. It’s not a very efficient way, though, because all pages need to be changed when you want to modify the shared parts.
A more efficient way is to first identify all parts that should be
shared by all pages and put them in separate files. Using JSP
include
actions and directives, you can then include them in all pages, as
shown in Example 9-1.
<%@ page contentType="text/html" %> <%@ include file="/shared/header.htmlf" %> <table width="90%"> <tr> <td valign="top" align="center" bgcolor="lightblue"> <jsp:include page="/shared/navigation.jsp" /> </td> <td valign="middle" align="center" width="80%"> The main content for this page </td> </tr> </table> <%@ include file="/shared/footer.htmlf" %>
The shared parts can contain only ...