10/11/2022 - 10/13/2022
10:00 AM - 06:00 PM
Online Virtual Class
USD $1,795.00
Enroll
10/24/2022 - 10/26/2022
10:00 AM - 06:00 PM
Online Virtual Class
USD $1,795.00
Enroll
11/07/2022 - 11/09/2022
10:00 AM - 06:00 PM
Online Virtual Class
USD $1,795.00
Enroll

For those looking for a longer introduction to Spring 3 programming topics, the following course includes all of the content from the 'Spring 3 Fundamentals' course in addition to covering more topics.

WA2014 Core Spring 3 Using Eclipse and WebSphere

Objectives

  Upon completion of this course, you should be able to:
  • Understand the need for the Spring framework
  • Use inversion of control to increase flexibility and testability of applications
  • Integrate Spring with the Hibernate and JPA ORM frameworks
  • Declaratively and programmatically manage transactions in Spring
  • Use the Spring MVC web framework to develop flexible web applications
  • Use Spring in web service applications
 

Topics

 
  • The Need for Spring
  • Inversion of Control
  • Wiring Beans
  • Database Integration and Transaction Management
  • Spring MVC
  • Spring Web Services
 

Audience

 

Software designers, developers and programmers.

 

Prerequisites

 

To succeed fully in this course, students should be able to:

  • Program Java applications - Course WA1278 meets this requirement
 

Duration

  Three days.
Download Sample Labs Lab Setup Guide

Outline for Spring 3 Fundamentals Using Eclipse and WebSphere Training

Chapter 1. Introduction to the Spring Framework

  • What is the Spring Framework?
  • Spring Philosophies
  • Why Spring?
  • Spring Modules
  • Requirements and Supported Environments
  • Using Spring with Servers
  • Role of Spring Container
  • Spring Example
  • Avoiding Dependency on Spring
  • Additional Spring Projects/Frameworks
  • Summary

Chapter 2. Spring 3 Development Tools

  • SpringSource Tool Suite
  • Developing Spring 3 Applications With RAD
  • Sequence of Installation for Spring/RAD/WebSphere
  • Alternatives to RAD for Spring/WebSphere Development
  • Creating a Spring Project
  • Tools for Spring Beans Configuration Files
  • Spring Configuration Validation
  • Spring Web Flow Definition Tools
  • Maven Overview
  • Managing Spring JARs with Maven
  • Adding Maven Dependencies
  • Summary

Chapter 3. Defining and Using Spring Beans

  • Spring “Beans”
  • Spring Containers
  • Instantiating the Spring Container
  • Retrieving Spring Beans
  • Configuring Spring Beans
  • <bean> Element
  • Naming Beans
  • Setting Bean Properties
  • Using the Spring XML 'p' Schema
  • Creating Beans with a Constructor
  • Resolving Constructor Ambiguity
  • Setting Properties vs. Invoking Constructors
  • Bean Scope
  • Effect of Bean Scope on Instances
  • Summary

Chapter 4. Advanced Spring Bean Configuration

  • Defining Beans with Annotations
  • Component Stereotype Annotations
  • Spring Component Annotations
  • Bean Scope with Annotations
  • Configuring Classpath Scanning for Spring Beans
  • Choosing Which Annotations to Use
  • Overriding Annotation Configuration with XML
  • Externalizing Bean Configuration
  • PropertyPlaceholderConfigurer
  • PropertyOverrideConfigurer
  • Inheriting Bean Configuration
  • Lazy Initialization
  • Declaring Beans from Static Fields
  • Declaring Beans from Object Properties
  • Summary

Chapter 5. Spring Dependency Injection

  • Dependency Injection
  • Benefits of Dependency Injection
  • Specifying Bean References
  • Constructor Injection
  • Constructor vs. Setter Injection
  • Injecting Multivalued Properties
  • Other Multivalued Types
  • Specifying the Data Type of Collections
  • Defining Collections Using Utility Factory Beans
  • Defining a Reusable Properties From an External File
  • Bean Scope Effect on Dependency Injection
  • Autowiring With XML
  • Autowiring Example
  • Errors in Autowiring
  • Excluding a Bean from Autowiring
  • Autowiring Multivalued Properties
  • Mixing Explicit and Autowiring
  • Summary

Chapter 6. Spring Dependency Injection with Annotations

  • Dependency Injection Annotations
  • @Autowired and @Inject
  • Locations for @Autowired and @Inject
  • Autowiring Multivalued Properties
  • Autowiring by Bean Name with @Resource
  • Injecting Named Collections Defined in XML with @Resource
  • Checking Required Dependencies
  • Enforcing Required Properties with XML Autowiring
  • Multiple @Autowired Constructors
  • Multiple Autowiring Matches
  • Qualifiers with Annotation-based Autowiring
  • Adding a Qualifier Value to a Bean Definition
  • Qualification of Multivalued Properties
  • Defining Custom @Qualifier Annotations
  • Complex Custom @Qualifier Annotations
  • Associating Custom Bean Qualifiers with XML
  • Processing Injection Annotations
  • Overriding Annotation Injection
  • Summary

Chapter 7. Testing Spring Applications

  • Spring Unit Testing
  • Configuring Test Projects
  • Spring TestContext Framework
  • Implementing Test Classes
  • Loading Spring Configuration with Test Classes
  • Accessing Spring Components Within Test Classes
  • Defining Tests to Execute
  • Isolating Tests Which Modify the Spring Environment
  • Transactional Testing Support
  • Transactional Test Base Classes
  • Avoiding False Positives with ORM Testing
  • Other Transaction Annotations
  • Other Spring Annotations for JUnit
  • Unit Testing Support Classes
  • Mock Objects
  • Summary

Chapter 8. Overview of Spring Database Integration

  • DAO Support in Spring
  • Spring Data Access Modules
  • Spring JDBC Module
  • Spring ORM Module
  • DataAccessException
  • @Repository Annotation
  • Using DataSources
  • DAO Templates
  • DAO Templates and Callbacks
  • ORM Tool Support in Spring
  • Summary

Chapter 9. Using Spring with JPA or Hibernate

  • Spring ORM
  • Benefits of Using Spring with ORM
  • Spring @Repository
  • Using JPA with Spring
  • Configure Spring JPA EntityManagerFactory
  • Using JNDI to Lookup JPA EntityManagerFactory
  • LocalContainerEntityManagerFactoryBean
  • LocalEntityManagerFactoryBean
  • Application JPA Code
  • Hibernate
  • Hibernate Session Factory
  • Spring LocalSessionFactoryBean
  • Application Hibernate Code
  • "Classic" Spring ORM Usage
  • Spring JpaTemplate
  • Spring JpaCallback
  • JpaTemplate Convenience Features
  • Spring HibernateTemplate
  • Spring HibernateCallback
  • HibernateTemplate Convenience Methods
  • Summary

Chapter 10. Using JSF with Spring

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

Chapter 11. Spring MVC

  • Spring MVC
  • Spring Web Modules
  • Spring MVC Components
  • DispatcherServlet
  • Context Loaders
  • Spring MVC Example
  • Spring MVC Mapping of Requests
  • Advanced @RequestMapping
  • Spring MVC Annotation Controllers
  • Controller Handler Method Parameters
  • Controller Handler Method Return Types
  • View Resolution
  • InternalResourceViewResolver
  • BeanNameViewResolver
  • XmlViewResolver
  • ResourceBundleViewResolver
  • Using Multiple View Resolvers
  • 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
  • Summary

Chapter 12. Implementing Web Services with Spring

  • Web Services in Spring Applications
  • Spring Web Service Options
  • Injecting Spring Components Into Web Service Classes
  • Using Spring with JAX-WS Web Services
  • Extending the SpringBeanAutowiringSupport Class
  • Using a @PostConstruct Initialization Method
  • Combining @PostConstruct and @Autowired
  • Comparing Third Party Frameworks with Spring-WS
  • Summary

Chapter 13. Introduction to Aspect-Oriented Programming

  • What is AOP?
  • Cross-Cutting Concerns
  • AOP Concepts
  • AOP in Spring
  • Summary

Chapter 14. Spring Transaction Management

  • Transactions
  • Spring Transaction Module
  • Transaction Management in Spring
  • Spring Transaction Managers
  • Integrating Spring Transactions with Java Enterprise Servers
  • Transaction Propagation Behavior
  • Transaction Isolation Levels
  • Read-Only and Timeouts
  • Default Transaction Settings
  • Declarative Transactions in Annotations
  • Spring XML Syntax for Transaction Advice
  • Programmatic Transactions
  • Transaction Rollback
  • Proxying Classes
  • Summary