Three Tiers for J2EE
Three Tiers for J2SE
The Case Study
Design Patterns
Domain and Service Models

Database and SQL Fundamentals
Relational Databases and SQL
Database, Schema, Tables, Columns and Rows
DDL-Creating and Managing Database Objects
DML-Retrieving and Managing Data
Sequences , Stored Procedures
Using SQL Terminals

JDBC Fundamentals
What is the JDBC API?
JDBC Drivers
Making a Connection
Creating and Executing a Statement
Retrieving Values from a ResultSet
SQL and Java Datatypes
Creating and Updating Tables
Handling SQL Exceptions and Proper Cleanup
Handling SQLWarning

Advanced JDBC
SQL Escape Syntax
Conditional (if) Statements
Using Prepared Statements
Using Callable Statements
Scrollable Result Sets
Updatable Result Sets
Transactions , Commits, Rollbacks, and Savepoints
Batch Processing

Introduction to Row Sets
Row Sets in GUI and J2EE programming
Advantages of RowSets , RowSet Specializations
Use of CachedRowSets

JDBC classes and the java.sql
DriverManager and DataSource Connection
Statement, PreparedStatement, and CallableStatement
javax.sql package

Connecting to databases
Selecting and installing a database driver
Connecting to the database via a network address
Connecting to the database based on information supplied by JNDI (the Java Naming and Directory Interface)
Using the java.sql.DataSource class
Increasing performance with connection pooling
Opening and closing the connection
Handling ClassNotFoundException and SQLException

JDBC design patterns
Overview of client tier, presentation tier, business tier, and resource tier patterns
The data access object pattern
The value object pattern
The model-view-controller pattern

HTML Forms
Servlets Overview
Servlet Lifecycle: init(), service(), destroy()
GenericServlet, ServletRequest, and ServletResponse
HttpServletRequest, HttpServletResponse and HttpServlet
Request-response, headers, GET, POST
Accessing Parameters

Additional Servlet Capabilities
HTTP headers and MIME types
RequestDispatcher: Including and forwarding
Sharing data with the request object attributes
Sharing data with ServletContext attributes
Error Handling

JavaServer Pages
Basics and Overview
JSP architecture , JSP tags and JSP expressions
Fixed Template Data , Lifecycle of a JSP
Model View Controller (MVC
Model 1/Model 2 Architecture
Data Sharing among servlets & JSP
Request, application, session and page scope
JSP implicit objects

Session Management
HTTP as a stateless protocol
Hidden form fields
session tracking
Exception handling and error pages
SingleThreadModel interface