Home    |    Instructor-led Training    |    Online Training     
         
 
Courses
ADA
Adobe
Agile
AJAX
Android
Apache
AutoCAD
Big Data
BlockChain
Business Analysis
Business Intelligence
Business Objects
Business Skills
C/C++/Go programming
Cisco
Citrix
Cloud Computing
COBOL
Cognos
ColdFusion
COM/COM+
CompTIA
CORBA
CRM
Crystal Reports
Data Science
Datawarehousing
DB2
Desktop Application Software
DevOps
DNS
Embedded Systems
Google Web Toolkit (GWT)
IPhone
ITIL
Java
JBoss
LDAP
Leadership Development
Lotus
Machine learning/AI
Macintosh
Mainframe programming
Mobile
MultiMedia and design
.NET
NetApp
Networking
New Manager Development
Object oriented analysis and design
OpenVMS
Oracle
Oracle VM
Perl
PHP
PostgreSQL
PowerBuilder
Professional Soft Skills Workshops
Project Management
Rational
Ruby
Sales Performance
SAP
SAS
Security
SharePoint
SOA
Software quality and tools
SQL Server
Sybase
Symantec
Telecommunications
Teradata
Tivoli
Tomcat
Unix/Linux/Solaris/AIX/
HP-UX
Unisys Mainframe
Visual Basic
Visual Foxpro
VMware
Web Development
WebLogic
WebSphere
Websphere MQ (MQSeries)
Windows programming
XML
XML Web Services
Other
J2EE Design Patterns
Overview

This course will utilize a combination of instructor-led discussions and interactive workshops to illustrate the use of patterns, best practices, design strategies and proven solutions for designing web applications that incorporate JSPs, Servlets, EJBs, JMS and JDBC components. This seminar will focus on the J2EE Patterns Catalog and design strategies that can be utilized to incorporate them. Each of the patterns for the Presentation, Business and Integration tiers will be extensively investigated with an in-depth discussion of the context, problem addressed, forces impacting each, solution provided and the related consequences.

Prerequisites

Each student should have a basic understanding of application development and have been exposed to an object-oriented programming language.

Class Format

Lecture and Lab

Audience

System architects, Java or OO developers, Project Managers and other professionals that will be designing or deploying web applications.

Learning Objectives

After completing this course, the student should be able to:

  • Understand the concept of J2EE patterns and the Catalog.
  • Illustrate the J2EE environment and the components affected by implementation of a J2EE pattern.
  • Discuss the Presentation tier design patterns and their affect on: sessions, client access, validation and consistency.
  • Depict various bad practices to be avoided when building Presentation tier components.
  • Discuss the Business tier design patterns and their affect on: Session and Entity EJBs and the use of remote references.
  • Depict various bad practices to be avoided when building Business tier components.
  • Understand the variety of implemented bad practices related to the Business and Integration tiers.
  • Examine the different patterns associated with the Integration tier.
  • Highlight the evolution of patterns in the implementation of Struts and JavaServer Faces.
  • Understand the role of J2EE Security
  • Examine the optimization techniques available in the deployment of J2EE applications in a WebSphere environment.
  • Depict the role of Cells, Clusters and Application Servers and impact of various patterns on different implementations.

Course Duration

4 Days

Course outline

J2EE Platform
  • Architecture
    • Client tier
    • Web tier
    • Business tier
    • EIS tier
  • J2EE Components & Containers
  • Standard API Services (JMS, JDBC, JNDI, etc)
  • Platform roles
  • Business Object optimization
J2EE Design Pattern Overview
  • What are Patterns
  • Pattern benefits
  • J2EE Pattern Catalog
    • Evolution
    • Presentation tier
    • Business tier
    • Integration tier
Presentation Tier Design Considerations
  • Model-View-Controller
  • Tier separation
  • Design issues
    o Session Management
    o Client Session state
    o Client Session Security issues
    o Validation
  • Bad Practices
    o Code control in multiple views
    o Expose Presentation-tier data to Business tier
    o Duplicate Form Submissions
    o Resetting bean properties via setProperty
    o Fat Controllers
    o Expose resources to direct Client access
    o Using Helpers as Scriptlets
Evolution of Presentation Patterns
  • Struts Architecture
  • Overview
    • Struts Pattern
    • Application Components
    • Tag usage
  • JavaServer Faces Architecture
    • Overview
    • JSF Pattern
    • Application Components
Presentation Tier Patterns
  • Intercepting Filter
    • Context
    • Problem
    • Solution & consequences
  • Front Controller
    • Context
    • Problem
    • Solution & consequences
  • View Helper
    • Context
    • Problem
    • Solution & consequences
  • Composite View
    • Context
    • Problem
    • Solution & consequences
  • Dispatcher View
    • Context
    • Problem
    • Solution & consequences
  • Service to Worker
    • Context
    • Problem
    • Solution & consequences
Business Tier Design Considerations
  • Overview
  • Role of Session EJBs
    • Stateful vs Stateless
    • Use in Business-tier Facades
  • Store State in Business tier
  • Role of Entity EJBS
  • Business and Integration tier Bad Practices
    • Mapping object model to Entity EJB
    • Mapping relational model to Entity EJB
    • Use case to Session EJB mapping
    • EJB attribute exposure
    • Embedded Service lookup in Client tier
    • Read-only Entity EJB
    • Entity EJB as fine-grained objects
    • Exposing EJB exceptions to Client tier
    • Large result sets
    • EJB and long-lived transactions
    • Rebuilding conversation state with Stateless Session EJBs
Business Tier Patterns
  • Business Delegate
    • Context
    • Problem
    • Solution & consequences
  • View Object
    • Context
    • Problem
    • Solution & consequences
  • Session Facade
    • Context
    • Problem
    • Solution & consequences
  • Business Object
    • Context
    • Problem
    • Solution & consequences
  • Composite Entity
    • Context
    • Problem
    • Solution & consequences
  • Transfer Object
    • Context
    • Problem
    • Solution & consequences
  • Transfer Object Assembler
    • Context
    • Problem
    • Solution & consequences
  • Value Object Assembler
    • Context
    • Problem
    • Solution & consequences
  • View List Handler
    • Context
    • Problem
    • Solution & consequences
  • Service Locator
    • Context
    • Problem
Integration Tier Patterns
  • Data abstraction via DAO implementations
    • JDO
    • SDO
    • EJB
    • JDBC
  • Data Access Object
    • Context
    • Problem
    • Forces
    • Solution & consequences
  • Service Activator
    • Context
    • Problem
    • Forces
    • Solution & consequences
  • Domain Store
    • Context
    • Problem
    • Forces
    • Solution & consequences
  • Web Service Broker
    • Context
    • Problem
    • Forces
    • Solution & consequences

J2EE Refactoring
  • Presentation Tier
    • Controller
    • Synchronizer token
    • Localize disparate logic
    • Hide presentation
    • Remove conversion from client
  • Business and Integration tier
    • Wrap Entity with Session
    • Business Delegate
    • Merge Session EJBs
    • Reduce EJB communication
  • General Refactoring
    • Separate Data access code
    • Connection Pool


Please contact your training representative for more details on having this course delivered onsite or online

Training Outlines - the one stop shopping center for IT training.
© Training Outlines All rights reserved