java advance frameworks - multisoft systems€¦ · partial java ee. the spring framework 3.0...

23
Address: B-125, Sec-2, Noida Web: www.multisoftsystems.com Contact: +91-9810306956 Landline: +91-1202540300/400 Software Development & Education Center Java Advance Frameworks (Struts | Hibernate |Spring)

Upload: others

Post on 27-Jun-2020

5 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Java Advance Frameworks - Multisoft systems€¦ · partial Java EE. The Spring Framework 3.0 provides an option for configuration through annotations instead of XML and support for

Address: B-125, Sec-2, Noida Web: www.multisoftsystems.com Contact: +91-9810306956 Landline: +91-1202540300/400

Software Development & Education Center

Java Advance Frameworks

(Struts | Hibernate |Spring)

Page 2: Java Advance Frameworks - Multisoft systems€¦ · partial Java EE. The Spring Framework 3.0 provides an option for configuration through annotations instead of XML and support for

Address: B-125, Sec-2, Noida Web: www.multisoftsystems.com Contact: +91-9810306956 Landline: +91-1202540300/400

STRUTS 2.0

Apache Struts is an open-source framework for creating Java web applications that use the

MVC design pattern. The Struts framework is particularly useful for larger web applications.

Although the Struts framework was popular early in the history of the Java language it has

gradually been replaced in popularity with other Java web frameworks, particularly Java

Server Faces, or JSF. For those looking to write Java web applications that will be deployed to

more recent Java EE application servers training in JSF may be greatly beneficial.

This course introduces the students to Struts. During the course, students will learn to design

and develop Struts based applications. Students learn how to incorporate JSPs, servlets, EJBs

and JavaBeans into their design. Corresponding to every chapter, there is a lab reinforcing the

concept.

Objectives

Understand and explain the Struts framework

Design and build Struts based applications

Audience

This course is intended for programmers and designers who want to design and develop

applications using the Struts Model-View-Controller (MVC) framework.

Prerequisites

A good understanding of HTML.

A good understanding of object-oriented programming using Java.

Experience with JSPs and servlets with some understanding of JavaBeans or EJBs.

Page 3: Java Advance Frameworks - Multisoft systems€¦ · partial Java EE. The Spring Framework 3.0 provides an option for configuration through annotations instead of XML and support for

Address: B-125, Sec-2, Noida Web: www.multisoftsystems.com Contact: +91-9810306956 Landline: +91-1202540300/400

Detailed Curriculum

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 Application

The Goal of the Application

The input form· The struts-config.xml

Page 4: Java Advance Frameworks - Multisoft systems€¦ · partial Java EE. The Spring Framework 3.0 provides an option for configuration through annotations instead of XML and support for

Address: B-125, Sec-2, Noida Web: www.multisoftsystems.com Contact: +91-9810306956 Landline: +91-1202540300/400

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

Page 5: Java Advance Frameworks - Multisoft systems€¦ · partial Java EE. The Spring Framework 3.0 provides an option for configuration through annotations instead of XML and support for

Address: B-125, Sec-2, Noida Web: www.multisoftsystems.com Contact: +91-9810306956 Landline: +91-1202540300/400

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

Page 6: Java Advance Frameworks - Multisoft systems€¦ · partial Java EE. The Spring Framework 3.0 provides an option for configuration through annotations instead of XML and support for

Address: B-125, Sec-2, Noida Web: www.multisoftsystems.com Contact: +91-9810306956 Landline: +91-1202540300/400

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

Page 7: Java Advance Frameworks - Multisoft systems€¦ · partial Java EE. The Spring Framework 3.0 provides an option for configuration through annotations instead of XML and support for

Address: B-125, Sec-2, Noida Web: www.multisoftsystems.com Contact: +91-9810306956 Landline: +91-1202540300/400

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

Templates, Tiles and JSTL

Objectives

Struts Templates

Template tags - insert, get and put

Struts 1.1 tiles support

Page 8: Java Advance Frameworks - Multisoft systems€¦ · partial Java EE. The Spring Framework 3.0 provides an option for configuration through annotations instead of XML and support for

Address: B-125, Sec-2, Noida Web: www.multisoftsystems.com Contact: +91-9810306956 Landline: +91-1202540300/400

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

Page 9: Java Advance Frameworks - Multisoft systems€¦ · partial Java EE. The Spring Framework 3.0 provides an option for configuration through annotations instead of XML and support for

Address: B-125, Sec-2, Noida Web: www.multisoftsystems.com Contact: +91-9810306956 Landline: +91-1202540300/400

Hibernate 3.0/4.0

You Will Learn How To:

Implement object persistence with Hibernate

Map objects to databases using XML and annotations

Optimize data access with Hibernate Query Language (HQL)

Course Benefits

Moving data back and forth from a database system and the object model of a Java application

is harder than it seems to be. In this course, Java developers learn how to quickly build

enterprise Java applications using the industry-standard Hibernate framework. Through

intensive hands-on exercises, you learn how to bridge the gap between object-oriented

domain models and relational database systems.

Who Should Attend

Architects, programmers, engineers, managers and those involved in the development of

complex enterprise-level Java applications. Knowledge of Java at the level of Java

Programming, plus real-world Java programming experience, is assumed.

Page 10: Java Advance Frameworks - Multisoft systems€¦ · partial Java EE. The Spring Framework 3.0 provides an option for configuration through annotations instead of XML and support for

Address: B-125, Sec-2, Noida Web: www.multisoftsystems.com Contact: +91-9810306956 Landline: +91-1202540300/400

Detailed Curriculum

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

Page 11: Java Advance Frameworks - Multisoft systems€¦ · partial Java EE. The Spring Framework 3.0 provides an option for configuration through annotations instead of XML and support for

Address: B-125, Sec-2, Noida Web: www.multisoftsystems.com Contact: +91-9810306956 Landline: +91-1202540300/400

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

Page 12: Java Advance Frameworks - Multisoft systems€¦ · partial Java EE. The Spring Framework 3.0 provides an option for configuration through annotations instead of XML and support for

Address: B-125, Sec-2, Noida Web: www.multisoftsystems.com Contact: +91-9810306956 Landline: +91-1202540300/400

SPRING

The Spring Framework is a lightweight solution and a potential one-stop-shop for building

your enterprise-ready applications. However, Spring is modular, allowing you to use only

those parts that you need, without having to bring in the rest. Spring enables you to build

applications from "plain old Java objects" (POJOs) and to apply enterprise services non-

invasively to POJOs. This capability applies to the Java SE programming model and to full and

partial Java EE. The Spring Framework 3.0 provides an option for configuration through

annotations instead of XML and support for some of the latest Java EE 6 features.

OBJECTIVES

Upon completion of this course, you should be able to:

Understand the need for the Spring framework

Integrate Spring with the JPA ORM framework

Use the Spring MVC web framework to develop

flexible web applications

Use Spring Web Flow to create conversational web

applications

Integrate Spring with JSF applications

Use AJAX with Spring

AUDIENCE

Software designers, developers and programmers.

Page 13: Java Advance Frameworks - Multisoft systems€¦ · partial Java EE. The Spring Framework 3.0 provides an option for configuration through annotations instead of XML and support for

Address: B-125, Sec-2, Noida Web: www.multisoftsystems.com Contact: +91-9810306956 Landline: +91-1202540300/400

Detailed Curriculum

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

Page 14: Java Advance Frameworks - Multisoft systems€¦ · partial Java EE. The Spring Framework 3.0 provides an option for configuration through annotations instead of XML and support for

Address: B-125, Sec-2, Noida Web: www.multisoftsystems.com Contact: +91-9810306956 Landline: +91-1202540300/400

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

Page 15: Java Advance Frameworks - Multisoft systems€¦ · partial Java EE. The Spring Framework 3.0 provides an option for configuration through annotations instead of XML and support for

Address: B-125, Sec-2, Noida Web: www.multisoftsystems.com Contact: +91-9810306956 Landline: +91-1202540300/400

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

Page 16: Java Advance Frameworks - Multisoft systems€¦ · partial Java EE. The Spring Framework 3.0 provides an option for configuration through annotations instead of XML and support for

Address: B-125, Sec-2, Noida Web: www.multisoftsystems.com Contact: +91-9810306956 Landline: +91-1202540300/400

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

Page 17: Java Advance Frameworks - Multisoft systems€¦ · partial Java EE. The Spring Framework 3.0 provides an option for configuration through annotations instead of XML and support for

Address: B-125, Sec-2, Noida Web: www.multisoftsystems.com Contact: +91-9810306956 Landline: +91-1202540300/400

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

Page 18: Java Advance Frameworks - Multisoft systems€¦ · partial Java EE. The Spring Framework 3.0 provides an option for configuration through annotations instead of XML and support for

Address: B-125, Sec-2, Noida Web: www.multisoftsystems.com Contact: +91-9810306956 Landline: +91-1202540300/400

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

Page 19: Java Advance Frameworks - Multisoft systems€¦ · partial Java EE. The Spring Framework 3.0 provides an option for configuration through annotations instead of XML and support for

Address: B-125, Sec-2, Noida Web: www.multisoftsystems.com Contact: +91-9810306956 Landline: +91-1202540300/400

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

Dijit ValidationTextBox Decoration

Dijit DateTextBox 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

Page 20: Java Advance Frameworks - Multisoft systems€¦ · partial Java EE. The Spring Framework 3.0 provides an option for configuration through annotations instead of XML and support for

Address: B-125, Sec-2, Noida Web: www.multisoftsystems.com Contact: +91-9810306956 Landline: +91-1202540300/400

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

Page 21: Java Advance Frameworks - Multisoft systems€¦ · partial Java EE. The Spring Framework 3.0 provides an option for configuration through annotations instead of XML and support for

Address: B-125, Sec-2, Noida Web: www.multisoftsystems.com Contact: +91-9810306956 Landline: +91-1202540300/400

Industry Interface Program

Projects

3 Assignments / Mini Projects

1 Web-based Project

1 Major Project

Domains / Industry

Retail Industry

Banking & Finance

Service

E-Commerce

Manufacturing & Production

Web Application Development

Research & Analytics

HR & Consultancy

FMCG

Consumer Electronics

Event Management Industry

Telecom

Networking

Page 22: Java Advance Frameworks - Multisoft systems€¦ · partial Java EE. The Spring Framework 3.0 provides an option for configuration through annotations instead of XML and support for

Address: B-125, Sec-2, Noida Web: www.multisoftsystems.com Contact: +91-9810306956 Landline: +91-1202540300/400

Training & Performance Tracking

Knowledge related to current technology aspects and corporate level deliverable &

Continuous training and assessment to make you industry ready. Throughout the Training

Curriculum Candidate will go through a Scheduled Assessment Process as below:

Continues Assessments

Practical Workshops

Modular Assignments

Case Studies & Analysis

Presentations (Latest Trends & Technologies)

Tech Seminars

Technical Viva

Observing live Models of various projects

Domain Specific Industry Projects

Page 23: Java Advance Frameworks - Multisoft systems€¦ · partial Java EE. The Spring Framework 3.0 provides an option for configuration through annotations instead of XML and support for

Address: B-125, Sec-2, Noida Web: www.multisoftsystems.com Contact: +91-9810306956 Landline: +91-1202540300/400

Skills Development Workshop

Communication is something which all of us do from the very first day of our life, yet there is a

question that haunts us most of the time “Did I express myself correctly in such and such

situation?” The answer to this question is really tricky, because in some cases we leave our

signatures and good impression but in some others we even fail to get our idea clearly. It

happens mostly because we don’t know how to act in certain situations. Every time we fail we

don’t lose completely, we do learn something, but prior knowledge of the same thing could be

more beneficial because then we could have turned that failure into success.

The course / workshop would focus at many aspects of personality, like:

Building positive relationships with peers & seniors

Building self-confidence & Developing clear communication skills

Exploring and working on factors that help or hinder effective interpersonal

communication

Learning impacts of non-verbal behavior & Dealing with difficult situations and difficult people

Workshops Consists of Following Activities:

Personality Development

Group Discussions & Debates

Seminars & Presentations

Case Studies & Analysis

Corporate Communication Development

HR & Interview Skills

Management Games & Simulations

Aptitude, Logical & Reasoning Assessments & Development