110. Java Servlets
Rev. 2.4.2
This course is now available directly from our partner, Capstone Courseware.
This practical, application-oriented course teaches Java Servlets
technology and shows how to use it to develop simple to complex Web
applications. It is intended for
experienced Java (J2SE) programmers who want to build Web applications or J2EE
components and systems.
The course begins with an overview of server-side Java programming
and Web protocols. Then students learn
the Java Servlets architecture, the request/response cycle, and servlet life
cycle, and how to build interactive Web applications that parse and/or generate
HTML forms. Several prominent patterns
for servlet application architecture are considered. Sessions are studied as a means to developing
sophisticated client/server conversations over several HTML pages. Multi-tier applications are developed using
servlets and JDBC for access to relational databases. The course develops the important concept of
the separation of programmatic and declarative development: use of configuration and context information
in lieu of hard-coded values, resource locations, etc., to make the Web
application as portable and easy to administer as possible. The course introduces JavaBeans as a standard
for business and data objects that can be shared among servlets and JSPs, and
develops techniques for sharing such objects at session scope or by request
forwarding. Finally, students learn how
to implement filters to adapt existing servlets by pre- and post-processing the
request and response.
The course software also includes an optional overlay of workspace
and project files to support use of the Eclipse IDE in the classroom. (This requires that the instructor be
experienced in use of Eclipse and able to walk students through basic tasks in
the IDE.)
LEARNING OBJECTIVES
·
Understand and appreciate the role of Java
Servlets in the overall Java 2 Enterprise Edition architecture, and as the best
Java solution to HTTP application development
·
Use request and response objects provided to a
servlet to read CGI parameters and to produce an HTML response
·
Develop interactive Web applications using HTML
forms and servlets
·
Manage complex conversations with HTTP clients
using session attributes
·
Understand the role of JDBC in Java persistence
code, and use JDBC for persistence in servlet applications
·
Preserve portability and ease of administration
for a servlet application by parameterizing servlet code, using initialization
parameters, properties files, and JNDI
·
Use JavaBeans classes to share complex business
data between components
·
Implement filters to adapt existing servlets
with new features, and to maximize the decomposition of logic between vertical
business functions and horizontal facilities
Duration: 2 days.
Prerequisites:
·
Java programming experience is required; Object Innovations Course 103, “Java
Programming,” is excellent preparation.
·
Exposure to HTML and Web page design are
beneficial but not necessary.
1.
Web Applications
Server-Side Programming
Web Protocols and Web Applications
Role of Web Servers
Java Servlets
Using Tomcat Web server
Structure of a Java Servlet
2.
Servlets Architecture
Servlets Architecture
Servlet and HttpServlet
Request and Response
Reading Request Parameters
Producing an HTML Response
Redirecting the Web Server
Deployment Descriptors
Servlets Life Cycle
Relationship to the Container
3.
Interactive Web Applications
Building an HTML Interface
HTML Forms
Handling Form Input
Application Architecture
Single-Servlet Model
Multiple-Servlet Model
Routing Servlet Model
Template Parsers
4.
Session Management
Managing Client State
Sessions
Session Implementations
HttpSession
Session Attributes
Session Events
Invalidating Sessions
5.
Database Access
JDBC
JDBC Drivers
Using JDBC in a Servlet
Data Access Objects
Threading Issues
Transactions
Connection Pooling
6.
Configuration and Context
The Need for Configuration
Initialization Parameters
Properties Files
JNDI and the Component Environment
JDBC Data Sources
Working with XML Data
7.
Filters
Servlet Filters
Uses for Filters
Building a Filter
Filter Configuration and Context
Filter Chains
Deploying Filters
Learning Resources
System Requirements
Hardware – minimal: Pentium 500 MHz, 128 MB RAM, 500 MB disk.
Hardware – recommended: Pentium 1.5 GHz, 512 MB RAM, 1 GB
disk.
Operating system: Tested on Windows XP Professional. The course software should be viable on all
Windows or Linux systems which support J2EE 1.4.
Software: All free downloadable tools.