Cover
Content
Expanded Contents
Introduction
1 - Get Started Right
1 - An Introduction to Web Programming with Java
An Introduction to Web Applications
Three Approaches for Java Web Applications
An Introduction to Servlet/JSP Web Development
Software for Developing Java Web Applications
Perspective
2 - How to Structure a Web Application with the MVC Pattern
Two Patterns for Servlet/JSP Applications
A Servlet/JSP Application That Uses the MVC Pattern
Perspective
3 - How to Use NetBeans and Tomcat
How to Get Started with NetBeans
How to Work with HTML and JSP Files
How to Work with Java Files
How to Work with XML Files
Other Skills for Working with Web Applications
Perspective
Exercise 3-1 - Install and Use the NetBeans IDE
Exercise 3-2 - Experiment with an Existing Application
Exercise 3-3 - Run Web Applications That Use a Database
2 - Essential Servlet and JSP Skills
4 - A Crash Course in HTML5 and CSS3
How to Work with HTML
How to Work with CSS
How to Code HTML Forms
Perspective
Exercise 4-1 - Modify a Web Page
5 - How to Develop Servlets
How to Create and Map a Servlet
How to Request a Servlet
Skills for Working with Servlets
How to Validate Data
How to Work with the web.xml File
More Skills for Working with Servlets
How to Work with Servlet Errors
Perspective
Exercise 5-1 - Modify the Servlet for the Email List Application
Exercise 5-2 - Create a New Servlet
6 - How to Develop JavaServer Pages
A Crash Course in EL and JSTL
How to Use JSP Tags
How to Use Standard JSP Tags with JavaBeans
How to Include a File in a JSP
How to Fix Common JSP Errors
Perspective
Exercise 6-1 - Modify the JSPs for the Email List Application
Exercise 6-2 - Create a New JSP
7 - How to Work with Sessions and Cookies
An Introduction to Session Tracking
How to Work with Sessions
How to Work with Cookies
How to Work with URL Rewriting and Hidden Fields
The Download Application
Perspective
Exercise 7-1 - Use a Cookie
Exercise 7-2 - Use a Session Attribute
Exercise 7-3 - Use URL Rewriting Instead of Hidden Fields
8 - How to Use EL
An Introduction to JSP Expression Language
Essential Skills for Working with EL
Other Skills for Working with EL
Perspective
Exercise 8-1 - Modify the Email List Application
9 - How to Use JSTL
An Introduction to JSTL
How to Work with the JSTL Core Library
The Cart Application
Perspective
Exercise 9-1 - Use JSTL in the Download Application
Exercise 9-2 - Use JSTL in the Cart Application
10 - How to Use Custom JSP Tags
How to Code a Custom Tag That Doesn't Have a Body
How to Code a Custom Tag That Has a Body
How to Code a Custom Tag That Has Attributes
How to Code a Custom Tag That Reiterates its Body
How to Work with Scripting Variables
Classes, Methods, and Fields for Working with Custom Tags
Perspective
Exercise 10-1 - Create and Use a Custom Tag
Exercise 10-2 - Create and Use a Reiterating Tag
3 - Essential Database Skills
11 - How to Use a MySQL Database
An Introduction to MySQL
How to Use MySQL Workbench
The SQL Statements for Creating a Database
The SQL Statements for Data Manipulation
Perspective
Exercise 11-1 - Review a SQL Script
Exercise 11-2 - Use MySQL Workbench
12 - How to Use JDBC to Work with a Database
How to Work with JDBC
The SQL Gateway Application
How to Work with Connection Pooling
The Email List Application
Perspective
Exercise 12-1 - Implement Connection Pooling
Exercise 12-2 - Create a User Admin Application
13 - How to Use JPA to Work with a Database
An Introduction to JPA
How to Code JPA Entities
How to Retrieve Data
How to Modify Data
A Complete JPA Class
Perspective
Exercise 13-1 - Test and Modify the Email List Application
Exercise 13-2 - Create a User Admin Application
4 - Advanced Servlet and JSP Skills
14 - How to Use JavaMail to Send Email
An Introduction to the JavaMail API
How to Create and Send an Email Message
Example Classes That Send an Email Message
Perspective
Exercise 14-1 - Send an Email from a Servlet
15 - How to Use SSL to Work with a Secure Connection
An Introduction to SSL
How to Configure a Testing Environment for SSL
How to Work with a Secure Connection
Perspective
Exercise 15-1 - Configure and Test a Secure Connection
16 - How to Restrict Access to a Web Resource
An Introduction to Authentication
How to Restrict Access to Web Resources
How to Implement a Security Realm
How to Allow Access to Authorized Users
Perspective
Exercise 16-1 - Work with Authentication Types
17 - More Security Skills
An Introduction to Website Security
How to Protect Passwords
Perspective
Exercise 17-1 - Test the PasswordUtil Class
18 - How to Work with HTTP Requests and Responses
An Introduction to HTTP
How to Work with the Request
How to Work with the Response
Practical HTTP Skills
Perspective
Exercise 18-1 - Work with Requests and Responses
19 - How to Work with Listeners
How to Use a ServletContextListener
How to Work with Other Types of Listeners
Perspective
Exercise 19-1 - Work with Listeners
20 - How to Work with Filters
An Introduction to Filters
How to Add a Filter
Two Filter Classes
Other Skills for Working with Filters
Perspective
Exercise 20-1 - Run the Download Application
21 - How to Work with JavaServer Faces
An Introduction to JSF
How to Use Managed Beans
How to Use Standard JSF Tags
The Email List Application
Perspective
Exercise 21-1 - Work with JSF
5 - The Music Store Website
22 - An Introduction to the Music Store Website
The User Interface
The Business Layer
The Controller Layer
The Structure
The Database
The Data Layer
The JPA Version Compared to the JDBC Version
Perspective
23 - The Applications of the Website
The User Interface for End Users
The User Interface for Administrators
Perspective
Exercise 23-1 - Test and Review the Music Store Site
Exercise 23-2 - Test and Review the JPA Version
Exercise 23-3 - Enhance the Site
Appendix A - How to Set Up Your PC for this Book
Appendix B - How to Set Up Your Mac for this Book
Index