Oracle Java Advance Frameworks Training

  • Overview
  • Course Content
  • Drop us a Query

Oracle Java Advance Frameworks training provides exposure to three different frameworks namely, Apache Struts, Hibernate, and Spring. This collective information supports the learner for developing advanced Java applications.

The Struts classes enables the participant to use the MVC design pattern for creating large web applications. At the completion of this section of the training, the candidate will be competent in the following skills:

  • Understand Struts Architecture and components
  • Familiar with Struts features in Eclipse
  • Comprehend Struts development cycle
  • Build Struts application using tag libraries
  • Add internationalization to the applications
  • Provide multi-application support and perform error handling
  • Establish connectivity with the database

The Hibernate training course imparts the skills to bridge the gap between the relational database systems and object-oriented domain models. By going through this section of the training, the Java developers will hold expertise in the following:

  • Describe the concept of Object Relational Mapping (ORM)
  • Explore the installation and configuration of Hibernate to develop Java applications
  • Know how to map with annotations and EXtensible Markup Language (XML)
  • Learn how to retrieve data and perform different operations on the data using Hibernate Query language (HQL)
  • Implement object persistence with Hibernate

The Spring framework section enables the learners to build lightweight enterprise-ready applications.


At the end of this training section, the participant willbe capable in the following:

  • Understand the need for the Spring framework
  • Know how to use Spring with Java Persistence API (JPA) or Hibernatefor managing relational data in Java applications.
  • Developflexible web applications using the Spring MVC web framework
  • Build conversational web applications using Spring Web Flow
  • Using Spring with JSF, JavaScript, and AJAX
  • Implement Spring security
Target audience

Software developers and programmers who want to get involved in the design and development of enterprise-level Java applications.

Prerequisites

The candidates having good understanding of HTML and object-oriented programming using Java are the ideal participants for this training. A basic understanding of JSPs, servlets, JavaBeans or EJBs is helpful.

Struts

Struts Architecture and Overview

  • Introduction to Struts
  • Objectives
  • Review: MVC model
  • What is Struts?
  • Struts flow
  • Components in Struts?
    • The Model
    • The View
    • The Controller
  • struts-config.xml
    • The <data-sources> element
    • The <form-beans> element
    • The <global-forwards> element
    • The <action-mappings> element
    • Sample
  • The role of web.xml for the application
  • Configuring Struts in web.xml
    • web.xml content
    • Steps to configuring Struts in web.xml
    • Sample
  • Summary

A Simple Struts Aplication

  • The Goal of the Application
  • The input form• The struts-config.xml
  • The Form Bean class
  • The Action class
  • The result page

Struts Features in Eclipse

  • Objectives
  • Struts binary distribution
  • Directory structure of Struts application
    • Example
  • Eclipse support for Struts
  • Developing a web application using Eclipse features of Struts

Struts Development Cycle

  • Objectives
  • Struts development cycle
  • Gathering requirements
  • Defining screen requirements
    • Data vs. FormBean
    • Define FormBean
  • Determining the screen flow
  • Defining the ActionMappings in struts-config.xml
  • Developing the FormBean
  • The reset ( ) method
  • Form validation using the validate ( ) method
  • ActionError
  • Define message key
  • Developing Action Class
  • Action and Action Class
  • The execute() method
  • ActionForward
  • ActionMapping class
  • execute() example
  • Example execute() method
  • Developing business logic - EJB
  • Developing JSPs
  • Configuring struts-config.xml and web.xml
  • Build, pack and deploy

Struts Tag Libraries

  • Objectives
  • JSP taglib directive
  • Components of a tag library
  • The JSP File
  • The tag library descriptor
  • The tag Handler Class
  • An example
    • The TLD File - carPrice.tld
    • TDL File - example
    • The Handler Class - CarPriceHandler.java
    • The Handler Class - example
    • The JSP File - Carprice.jsp
  • Tag Lib Handler life cycle
  • Directory structure: where custom tag libraries fit
  • Struts TagLib
  • Bean tags
  • bean:message
  • bean:define
  • bean:page
  • bean:include
  • bean:cookie
  • HTML tags
  • html:form
  • html:submit
  • html:text
  • html:link
  • html:password
  • Logic tags
  • Functionality
  • logic:equal
  • logic:iterate
  • Template tags

Struts Plugin, Internationalization and Error Handling

  • Objectives
  • Struts plugins
    • Creating a plugin
    • Configuring a plugin
  • Internationalization
    • Struts Internationalization Mechanisms
    • Adding internationalization to the example application
    • Formatting messages
  • Error Handling
    • Struts Error Handling Mechanisms
    • ActionError and ActionErrors
    • Error handling from a form bean
    • Error handling from an action
    • Formatting error messages
    • Struts exception handling
    • Adding error handling to the example application

Miscellaneous Advanced Features

  • Objectives
  • HTTP Redirection
  • Dealing with check boxes
  • Context sensitive form validation
  • DispatchAction
  • BeanUtils package
  • Digester package
  • DynaActionForms
  • Multi-application support
  • Validators

Database Programming

  • Configuring and using a Struts Data Source
  • Using a J2EE Data Source
  • Transaction management from an action
  • Sharing a connection with the model classes
  • Pre-populating a form for editing data
  • Paginated listing of large amounts of data

Database Programming

  • Objectives
  • Struts Templates
  • Template tags - insert, get and put
  • Struts 1.1 tiles support
  • Inheritance in tiles definitions
  • JSTL overview
  • JSTL and Struts

Unit Testing Struts Applications – Struts Test Case

  • Objectives
  • What is JUnit?
  • A sample JUnit test case
  • A simple StrutsTest test case
  • Executing a StrutsTest test
  • Testing strategies

JSTL

  • Objectives
  • The future of Struts Tags
  • JSTL - What does it provide?
  • JSTL actions
    • Core JSTL tags
    • Formatting tags
    • Database tags
    • XML tags
  • JSTL Expression Language
  • JSTL Implicit Objects

Hibernate 3.0/4.0

Introduction

  • What is Hibernate?
  • Object Relational Mapping
  • JDBC v/s Hibernate
  • Installing Hibernate
  • Using Hibernate with an IDE

Getting Started

  • POJOs and Persistence
  • Creating Hibernate Mappings
  • Configuration
  • Session Factory
  • Session
  • Working with Entities
  • Transactions
  • Queries
  • Tying Everything Together

Mapping with Annotations

  • Introduction to Annotations
  • Annotation Pros and Cons
  • Using Annotations in Your Application
  • Mapping Entities and Tables
  • Mapping Columns and Data Types
  • Mapping Associations
  • Mapping Collections

Mapping with XML

  • Mapping Entities and Tables
  • Mapping Columns and Data Types
  • Mapping Associations
  • Mapping Collections

Working with Persistent Objects

  • Object states in Hibernate
  • Common Hibernate Methods
  • Working with Entities
  • Working with Bidirectional Associations
  • Flushing the Session
  • Cascading Operations
  • Orphans
  • Lazy Associations

Querying with HQL

  • The Hibernate Query Language
  • Retrieving Data
  • Using Operators
  • Sorting Results
  • Using Aggregate Functions
  • Grouping Results
  • Using Joins
  • Using Parameters

Transactions

  • Hibernate and Thread-Safety
  • Introducing the Hibernate Util Class
  • Committing and Rolling Back Transactions

Spring

Entities And Java Persistence API

  • Data Persistence
  • Java Persistence API
  • Entities
  • Session Beans v/s Entities
  • Entities
  • Persisting and Retrieving Data
  • Accessing Entities
  • Entity Manager & Persistence Unit
  • Persistence Context
  • Entities - Example
  • persistence.xml – Hibernate Provider
  • persistence.xml – Open JPA Provider
  • persistence.xml - Toplink
  • Entity Instance Lifecycle
  • Creating Entity Manager in Session EJB
  • Creating Entity Manager in a Plain Java Class
  • Working With the Entity Manager Interface
  • Transaction Basics
  • Summary

Using Spring With JPA or Hibernate

  • Spring ORM
  • Benefits of Using Spring with ORM
  • Spring @Repository
  • Using JPA with Spring
  • Configure Spring JPA Entity Manager Factory
  • Using JNDI to Lookup JPA Entity Manager Factory
  • Local Container Entity Manager Factory Bean
  • Local Entity Manager Factory Bean
  • Application JPA Code
  • Hibernate
  • Hibernate Session Factory
  • Spring Local Session Factory Bean
  • Application Hibernate Code
  • "Classic" Spring ORM Usage
  • Spring JpaTemplate
  • Spring JpaCallback
  • JpaTemplate Convenience Features
  • Spring Hibernate Template
  • Spring Hibernate Callback
  • Hibernate Template Convenience Methods
  • Summary

Spring MVC

  • Spring MVC
  • Spring MVC Components
  • DispatcherServlet
  • Context Loaders
  • Spring MVC Example
  • Mapping Web Requests
  • BeanNameUrlHandlerMapping
  • CommonsPathMapHandlerMapping
  • Using Multiple Handler Mappings
  • Controller Hierarchy
  • AbstractCommandController
  • SimpleFormController
  • AbstractWizardFormController
  • MultiActionController
  • ThrowawayController
  • View Resolution
  • InternalResourceViewResolver
  • BeanNameViewResolver
  • XmlViewResolver
  • ResourceBundleViewResolver
  • Using Multiple View Resolvers
  • Binding Views to Models
  • Spring Form Tags
  • form and input Tags
  • password and hidden Tags
  • checkbox Tag
  • radiobutton Tag
  • textarea Tag
  • select Tag
  • option Tag
  • options Tag
  • errors Tag

Tiles Web Application Templates

  • Apache Tiles
  • Configuring Tiles in Spring
  • Tiles URL-based View Resolver
  • Tiles ViewPreparer
  • Tiles ViewPreparer Configuration

Alternate Content With Spring Web Apps

  • Creating Excel Spreadsheets
  • Creating PDF Documents
  • Creating Other Non-HTML Documents
  • Summary

Introduction To Spring Web Flow 2

  • What is Spring Web Flow 2?
  • Relationship to Spring and Spring MVC
  • Spring Web Flow 2 Modules
  • Integration Support
  • What is a Flow?
  • Book Hotel Flow Example
  • Book Hotel Flow Definition
  • Benefits of Spring Web Flow 2
  • Required Software
  • Configuration Steps
  • JAR File Instructions
  • Configure web.xml
  • Spring Web Flow Components
  • Sample Spring Web Flow Configuration File
  • Summary

Defining Flows

  • Recap: What is a Flow?
  • Recap: Book Hotel Flow Example
  • Flow Definition Language
  • Skeletal Flow Definition
  • States
  • View State
  • Transitions
  • Generating Events
  • Generating Events using Submit Button
  • Generating Events using Links
  • End States
  • Actions
  • When do Actions Occur?
  • Putting it all Together
  • Introduction to Unified Expression Language
  • Unified Expression Language Functionality
  • Unified Expression Language Implicit Variables
  • Flow Instances
  • Flow Variables
  • Variable Scopes
  • Assigning and Accessing Variables
  • Flow Input
  • Binding a View to a Model
  • Summary

Using JSF With Spring

  • JSF Integration Options
  • DelegatingVariableResolver
  • SpringBeanVariableResolver
  • SpringBeanFacesELResolver
  • Spring Bean Scopes
  • FacesContextUtils
  • JSF with Spring Web Flow

Spring Security

  • Securing Web Applications with Spring Security 3.0
  • Spring Security 3.0
  • Authentication and Authorization
  • Programmatic v Declarative Security
  • Getting Spring Security from Maven
  • Spring Security Configuration
  • Spring Security Settings in Spring Configuration
  • Basic Web Security Configuration
  • Granting Anonymous Access to Pages and Resources
  • Requiring Encrypted HTTPS Communication
  • Customizing Form-based Login
  • Custom Login Page
  • Configure Logout
  • Session Management
  • Selectively Display Links in a JSP
  • Method Level Security
  • Authentication Manager
  • Using Database User Authentication
  • LDAP Authentication
  • Encoding Passwords
  • Using an External Authentication Provider
  • Summary

Introduction to AJAX

  • What is AJAX?
  • A Simple Example
  • The Old Way
  • The AJAX Way
  • Two Key Aspects of AJAX
  • What are the Advantages of the AJAX Approach?
  • AJAX Technologies
  • The Basic AJAX API
  • Creating the XMLHttpRequest Object
  • The XMLHttpRequest Object Basics
  • Complete Example
  • The Timeline
  • Review Questions
  • Review Answers

Using Javascript With Spring

  • Spring JavaScript
  • Relationship to Dojo
  • Serving JavaScript Resources
  • Including Spring JavaScript
  • Spring JavaScript Decorations
  • DijitValidationTextBox Decoration
  • DijitDateTextBox Decoration
  • Spring ValidateAllDecoration
  • Handling Ajax Requests with Spring MVC
  • Handling Ajax Requests with Spring Web Flow
  • Summary

Spring Rest Services

  • Many Flavors of Services
  • Understanding REST
  • RESTful Services
  • REST Resource Examples
  • REST vs SOAP
  • Relation to Spring MVC
  • Adding REST Capability to Existing Spring MVC Applications
  • RestTemplate
  • HTTP Message Conversion
  • Summary

Review Of New Features In Spring 3.0

  • Requirements and Supported Environments
  • Using Spring with Servers
  • Packaging
  • Spring Expression Language
  • Java-based Configuration
  • Annotation-based Configuration
  • Spring MVC Changes
  • New Spring MVC Configuration
  • Spring MVC Annotation Example
  • Validation
  • Summary

Partners

A Few Things You'll Love!

What our Students Speak

+