HP Academia Training Program
J2EE (STRUTS WITH HIBERNATE)
Course Code: HPE06-1.0
Duration: 105Hrs.
Overview
J2EE is a framework that defines the standard for developing multi-tier
enterprise applications. It simplifies enterprise applications by basing
them on standardized, modular components, and it provides a complete
set of services to those components. Introduction to Object/relational
mapping framework for enabling transparent POJO persistence and build
persistent objects using common OO programming concepts. Allows
developers focus on domain object modelling not the persistence
plumbing. Sophisticated query facilities. Struts2 is popular and mature
web application framework based on the MVC design pattern. Struts2 is
not just the next version of Struts 1, but it is a complete rewrite of the
Struts architecture.
Course Objective
The 105 hours training program will help the learner understand an
overall picture of each of the J2EE technologies, Web and Server side
that are essential for understanding the nature of J2EE platform and the
reasons for its use. On completion of the training, participants will be able
to build enterprise applications using struts framework.
Prerequisite
Basic knowledge of Java and OOPs is required.
Learning Content
Topic
Sub Topic
Introduction to JAVA Technology
JAVA Language Features
What is JAVA byte code? What is JVM?
Introduction to JAVA
Technology
Different Editions of JAVA
Writing the Hello World command-line Application
Understanding the main() method
Setting path & class path
Encapsulation
Object-Oriented
Programming
Concepts
Polymorphism
Inheritance
Abstraction
HP
Implementing OO Concepts: Defining Classes
Variables and methods as members of a class
Introduction to Java EE
Important J2EE API
Introduction to Java
EE
J2EE Architecture
Introduction to EE Components
EE Containers
Introduction to JDBC API
Types of JDBC Drivers
Executing statements, prepared statements
JDBC API
DatabaseMetaData
ResultsetMetaData
JDBC Transactions
Save Points
Isolation Levels
Issues with Persistence layers
Object/Relational Mapping(ORM)
What is and Why Hibernate
Introduction to
Hibernate
Hibernate architecture
Instance states
Persistence lifecycle operations
POJO (Plain Old Java Object) Based Mapping
DAO
Persistent Entity Class
Hibernate Mapping
Mapping Class
Mapping the Entity Class
Primary keys: Id property, Generated Id
Hibernate Type System
Working with sessions and Persistent Objects
What is HQL
The Query Interface
Creating and working with queries
Named Queries
Hibernate Query
Lanaguage(HQL)
Projection Queries
Aggregate Queries
from clause
Associations and join
select clause
HP
Polymorphic query
where clause
Criteria query
Criteria query API
Pagination
Criteria query
Restrictions
Ordering
Aggregate function
Fetch modes
Query By Example
Transaction Overview
Transactions in Hibernate
Hibernate Transaction API
The lifecycle of managed objects
Persistence Lifecycle Persistent, transient, and detached objects
The Persistence (Session) Context
Contextual Sessions
Synchronization to the Database
The Session as cache
Detached Objects and Optimistic Locking
Optimistic Locking /
Versioning
Versioning overview and Using Versioning
Locking Objects
Object Relationship Overview
Mapping Collections of Value Objects
Entity Relationships: 1-N, N-1, N-N, 1-1
Relationships
Mapping Entity Relationships
Uni and Bi-directional Relationships
The Relationship "inverse"
Cascading Over Relationships
Queries Across Relationships
Entity Inheritance with Hibernate
Inheritance Mapping
Table-per-class mapping
Table per Subclass mapping
Table per Concrete Class mapping
Introduction To HTML
HTML
Markup Tags
HTML Comments
Character entities
HP
Working with CSS
Invoking JavaScript methods for event handling
A conceptual view of JAVA EE Web Application
Web Application Structure
JAVA EE Web
Application & its
working
New Java Servlet technology features
Annotation support
Asynchronous support
Ease of configuration
Servlet Context
Deployment Descriptor
Deployment Descriptor Elements
Servlets & dynamic content
Advantage of Servlets
Java Servlet
technology
Life cycle of a Servlet
Packages & Classes
Generic & Http Servlets
Declaring & Mapping Servlets in [Link]
Retrieving Http Headers & Form Data
Request and Response
Request dispatching & response redirection
Session Management
Different ways to session management
Session Management
URL Rewriting : Advantage & Disadvantage
Hidden Form Fields : Advantage & Disadvantage
Cookies: Session-Level & Persistent
Using HttpSession
Servlet Listeners
Introduction To Servlet Listeners
Servlet Filter Overview
Filter API
Using Filters
Servlet Filter
Filter Processing
Filter Chain
Mapping of a filter in [Link]
Using filters to modify a request or response
Shortcomings of Servlets : Solution is JSP
Getting Started with
JSP
JSP Life Cycle
JSP Elements
JSP Directives
HP
Scripting Elements
Built-in Action Elements
Using Beans in JSP
An Overview
Using a tag library in a web application
JSP Custom Tags
Custom Tag API
Defining a Tag Handler class
Configuring the .tld file
More about prefix & URI
Using JSTL
Different Libraries in JSTL
JSTL Expression Language
Using JSTL
Implicit Object & Operators in EL
Data Objects & the JSTL EL
Using Core Tag Library
Accessing DB using SQL Tag Library
MVC Architecture
Introduction to
Struts2 Framework
Application Flow
Components
Model, View and Controller
Building a simple web application using struts2
Introducing Struts 2 actions
Packaging your actions
Struts 2 actions
Implementing actions
Transferring data onto objects
Building custom validators
File uploading
Why intercept requests?
Interceptors in action
Interceptors
Surveying the built-in Struts 2 interceptors
Declaring interceptors
Building your own interceptor
Data transfer and type conversion
Data transfer: OGNL
and type conversion
OGNL and Struts 2
Built-in type converters
Customizing type conversion
Building a view: tags
HP
An overview of Struts tags
Data tags
Control tags
Miscellaneous tags
A brief primer for the OGNL expression language
Life after the action
Results in detail
Commonly used result types
JSP alternatives
Global results
Why we need UI component tags
UI component tags
Tags, templates, and themes
UI Component tag reference
Ajax Tag (dojo,jquery)
Wiring your actions for validation
Validation framework Writing a custom validator
Validation framework advanced topics
The Struts 2 framework and Java i18n
Internationalization
A Struts 2 i18n demo
Struts 2 i18n: the details
Overriding the framework's default locale determination
Tiles and Struts 2
HP
Tiles Framework in struts2