Fast Track to Java EE 5 with Servlets, JSP & JDBC Training in Cambridge
We offer private customized training for groups of 3 or more attendees.
|
||
Course Description |
||
The course begins with a discussion of web application architecture. A
major part of the course is spent on Servlets and JavaServer Pages (JSP)
with special focus on using the JSTL. It then covers JDBC,
Javaâ??s database access technology. The course concludes with an
introduction to EJB and other important Java EE technologies. Throughout
the course, students will create code for a online store. Students will
learn not only specific topics and APIs but also how to fit the pieces
together into a complete application.
Course Length: 5 Days
Course Tuition: $2090 (US) |
Prerequisites |
|
A working knowledge of Java. |
Course Outline |
Java EE Introduction
Java EE Overview
Java EE Technologies
Java EE Architecture
MVC
JEE Web App Review
Web App Overview
Servlet, Servlet Scopes
JSP Overview
Custom Tags, Tag Libraries, taglib directive
Getting started with JSF
JSF Overview
Purpose and Goals
JSF Architecture
JSF Views - facelets and JSP Pages
Managed Beans, Controler, configuration
Your first JSF Application - setup, configuration, deployment
Managed Beans
Defining a Managed Bean (annotation-based and using faces-config.xm)
Managed Bean Lifecycle
Managed Beans and JSF Forms
Managed Beans as Value Binding Expressions
JSF Expression Language (EL) & the Unified EL (JSF 1.2)
Value/Method Binding Expressions
JSF Navigation
Facelets and JSF Tag Libraries
Facelet Introduction and Life Cycle
JSF Tag Library Overview
JSF Core tags <f:tagName>
JSF HTML tags <h:tagName>
Using the Most Common Form controls – TextFields, Buttons, Links …
Additional JSF Capability
h:dataTable
Validation and Conversion
Templates
Servlets and JSP with JSP Standard Tag Library (JSTL)
Web Application Basics
How the Web works, Thin Clients, TCP/IP
HTTP overview, Brief HTML review
Overview of J2EE
Web Applications - Structure and Contents
Servlet Basics and Capabilities
Basics of Writing a Servlet
Labs:
Setup development environment and server; Create a simple web application
Create a Simple Servlet
Servlet API
HTML Forms Review
HTTP Review: Request-response, headers, GET, POST
Overview: How Servlets Work
Servlet Lifecycle: init(), service(), destroy()
API: Servlet, ServletConfig, ServletRequest, ServletResponse, GenericServlet,
Requests and Responses - Using ServletRequest and ServletResponse
HTTP Servlets: HttpServlet, HttpServletRequest, HttpServletResponse
Accessing Parameters
More About web.xml
Labs:
Using Client Input, Retrieving parameters
Additional Servlet Capabilities
Working with HttpServletResponse
Status/Errors
Response Headers
MIME Types
Initialization
Overview
Using ServletConfig and ServletContext
Init Parameters - Servlet and Web App
Error Handling: Error Pages and Their Configuration
Labs:
Using Model Classes, Generating Simple Output
JavaServer Pages
Basics and Overview
JSP architecture
JSP tags and JSP expressions
Fixed Template Data
Lifecycle of a JSP
Model View Controller (MVC)
Overvie
Java EE Model 2 Architecture : Servlet Controllers, JSP Views, JavaBeans Glue
Servlets as Controllers
Using RequestDispatcher
Forwarding and Including
Data Sharing in a Web App
Object scopes or "buckets"
Using JavaBeans to Hold Data
Using the Scope Objects - get/set/remove Attributes
Request, application, session and page scope
JSP Expression Language (EL) and Data Access
JSP EL Overview
JavaBeans and the EL
Predefined JSP EL implicit objects (pageContext, param, header, scope objects)
<jsp:useBean>, <jsp:getProperty>, <jsp:setProperty>
jsp:include, jsp:forward, the page Directive
Labs:
Create a Simple JSP Page
Put Data on a Scope and Forward to a JSP
Use the JSP Expression Language
Using Custom Tags
Custom tags overview
Reducing JSP complexity
Tag Libraries
Overview and TLD (Tag Library Descriptor)
taglib Directive - Using a Tag Library
JSTL
Overview
c:out, c:forEach
c:url, c:param
Labs:
Use c:forEach for Iteration
Working with Links and c:url
HTTP Session Tracking
HTTP Session Overview
HTTP as a stateless protocol
Hidden form fields
Cookies
Overview and Servlet API
Using Cookies, Persistent and Session Cookies
Issues
Sessions
Servlet/JSP Session Support, HttpSession
Using Sessions - Putting Data in, Retrieving Data From
How Sessions Work
Labs:
Storing and Using Session Data
Session 8: More JSP Capabilities
Error Pages
Error Pages and Exception Handling
The implicit exception Object
JSP 2.0+ Error Handling and errorData Object
Directives (page, include, others)
JSPs as XML Documents
Scriptlets - Overview and Usage
Labs:
Using Error Pages
{optional} Using Scriptlets
More JSTL and EL
More About the JSTL
Core, Formatting, SQL, XML, Functions Libraries
Custom Tag Architecture and Tag Library Structure
c:if, c:choose, c:import
Formatting: formatNumber, formatDate, Resource Bundles
Using Common Tags
XML Action Example
More About the JSP EL
Syntax, Identifiers, Literals, Operators
Implicit Objects
The pageContext in Detail
Type Coercion
String concatenation
Using Common Tags
c:if, c:choose
c:set
fmt:formatDate, fmt:formatNumber
Labs:
Using c:if, c:choose, c:when and c:otherwise to customize output
[Optional]: Using the Function Library
JSTL Format Tags
Security
J2EE Security Overview
Role Based Security
Declarative Security
Web Authentication - Basic, Form-Based, Digest, HTTPS Client
Using Basic Authentication
Using Form-Based Authentication
Programmatic Security - HttpServletRequest, Retrieving Roles
Labs:
Securing a Web App, Setting Up and Using a Security Domain
Additional Topics
Design Issues
Dividing Responsibilities Between Servlets/JSP
Network Overhead
Scalaibility - Clustering, Serving Static Content
Other Guidelines - Using the Technology Well
Custom Tags Using Tag Files
Overview and Writing Tag Files
Tag Attributes
The tag Directive
Servlet Filter overview
Filtering examples, lifecycle, & filter chains
Filter API, Modifying a request, Modifying a response
Java ServerFaces (JSF) Overview
Advanced MVC – JSF overview
JSF Components
Process Flow
Advantages and Disadvantages
JDBC
JDBC Introduction
Relational Database and JDBC Overview
Overview, Table Relationships, Web Based Data Access, JDBC Characteristics
JDBC Architecture, JDBC API Overview
DriverManager, JDBC Drivers
Naming databases with JDBC URLs
Connecting to a database
Connection interface, Establishing a connection
DataBaseMetaData
Handling Database Exceptions
Data Access with JDBC
DAO – Data Access Objects, O-R Mapping, Value Objects
Processing Database Data
Executing statements, precompiled statements and stored procedures
Processing ResultSets,
Dealing with Null data
Updating, inserting, retrieving data
Controlling Transactions
JDBC Driver Types
Labs:
Lab series creating DAO using JBDC
Advanced Topics
Java Persistence API Overview
Advanced JDBC Features
Batch Updates, Srollable Result Sets, Rowsets, User Defined Types, BLOBS, CLOBS
Database Integration and Additional Technologies
Java EE Database Integration
Environment Naming Context (ENC) and Resource Injection
JNDI Overview and the ENC
Connecting servlets to a database via DataSource
Connection Pooling
Additional Topics
EJB
Overview of EJB
High-level EJB architecture
Roles within EJB
Client view of a session bean
JNDI (Java Naming and Directory Interface)
Remote and Home Interfaces
Writing an EJB client
XML and Web Services Overview
XML and Web Services
JAX-WS Web Services Overview
Design Considerations: Web Design, System Architecture, Scalability, Clustering
Labs
Accessing a database from a servlet
Other Optional Labs (Depends on Platform Support)
|
Course Directory [training on all levels]
- .NET Classes
- Agile/Scrum Classes
- Ajax Classes
- Android and iPhone Programming Classes
- Blaze Advisor Classes
- C Programming Classes
- C# Programming Classes
- C++ Programming Classes
- Cisco Classes
- Cloud Classes
- CompTIA Classes
- Crystal Reports Classes
- Design Patterns Classes
- DevOps Classes
- Foundations of Web Design & Web Authoring Classes
- Git, Jira, Wicket, Gradle, Tableau Classes
- IBM Classes
- Java Programming Classes
- JBoss Administration Classes
- JUnit, TDD, CPTC, Web Penetration Classes
- Linux Unix Classes
- Machine Learning Classes
- Microsoft Classes
- Microsoft Development Classes
- Microsoft SQL Server Classes
- Microsoft Team Foundation Server Classes
- Microsoft Windows Server Classes
- Oracle, MySQL, Cassandra, Hadoop Database Classes
- Perl Programming Classes
- Python Programming Classes
- Ruby Programming Classes
- Security Classes
- SharePoint Classes
- SOA Classes
- Tcl, Awk, Bash, Shell Classes
- UML Classes
- VMWare Classes
- Web Development Classes
- Web Services Classes
- Weblogic Administration Classes
- XML Classes
Java Programming Uses & Stats
Difficulty
|
Popularity
|
Year Created 1995 |
Pros
Most Commonly Used:
Great Career Choice:
Android Apps Development:
It Can Run On Any Platform:
Great Supporting IDE's: |
Cons
Uses a Lot of Memory:
Difficulty in Learning:
Slow Start Up Times:
Verbose and Complex Code:
Commercial License Cost: |
Java Programming Job Market |
Average Salary
|
Job Count
|
Top Job Locations
New York City |
Complimentary Skills to have along with Java Programming
- If you are an experienced Java developer, learning a complimentary language to Java should come much more naturally. As an example JetBrains recently created the Kotlin programming language which is officially supported by Google for mobile development. Kotlin compiles to Java bytecode and runs on the JVM; it's purported to address many of Java's shortcomings... |