Course Description
Spring is an application framework that provides a comprehensive programming and configuration model for Java-based enterprise applications. This 5-day training will enable students to learn the hottest, most in-demand Java web framework.
Course Objectives
After completing this course, students should be able to:
-
Use Spring's Inversion of Control to declare application components, rather than hard-coding their states and lifecycles.
-
Use Dependency Injection to further control object relationships from outside the Java code base.
-
Create validators for business objects, and associate them for application-level and unit-testing uses.
-
Build a Web application as a Spring DispatcherServlet and associated application context, with declared beans acting as controllers, command objects, and view resolvers.
-
Build and manage HTML forms with Spring command objects and custom tags.
-
Use Spring interceptors to implement horizontal features in the Web application.
-
Connect business objects to persistent stores using Spring's DAO and ORM module.
Who Should Attend
All attendees must have at least one year of full-time Java development experience, developing Servlets, Java Server Pages and basic knowledge of Extensible Markup Language.
Course Content
-
Overview
-
Web Application
-
Java EE: The Good, The Bad, and the Ugly
-
Enter the Framework
-
Spring Modules
-
Controlling Object Creation
-
Web Applications
-
Persistence Support
-
Aspect-Oriented Programming
-
Integrating Other Frameworks
-
-
Core Techniques
-
Component-Based Software
-
JavaBeans, Reconsidered
-
The Factory Pattern
-
Inversion of Control
-
XML View: Declaring Beans
-
Java View: Using Beans
-
Singletons and Prototypes
-
Initializing Bean State
-
-
The Business Tier
-
Complex Systems
-
Assembling Object Graphs
-
Dependency Injection
-
Single and Multiple Relationships
-
Autowiring
-
Bean Aliases
-
Order of Instantiation
-
Validation
-
Nested Properties
-
-
The Web Tier
-
The MVC Pattern
-
The Front Controller Pattern
-
DispatcherServlet
-
A Request/Response Cycle
-
The Strategy Pattern
-
JavaBeans as Web Components
-
Web Application Contexts
-
Handler Mappings
-
"Creating" a Model
-
View Resolvers
-
-
Controllers and Commands
-
Working with Forms
-
Command Objects
-
The Template Method Pattern
-
Command Controllers
-
Data Binding
-
MultiActionController
-
Scope and Granularity of Command Objects
-
-
Working with Forms
-
Property Editors
-
Validating Form Input
-
Form Controllers
-
AbstractFormController
-
SimpleFormController
-
Spring Custom Tags
-
<form:form> and Friends
-
<form:errors>
-
Reporting Errors
-
-
Refining the Handling Cycle
-
The Intercepting Filter Pattern
-
Exception Handling
-
Interceptors
-
The Decorator Pattern
-
Context and Lifecycle
-
Awareness Interfaces
-
Support and Utility Classes
-
"Death By XML"
-
-
The Persistence Tier
-
The DAO Pattern
-
The DaoSupport Hierarchy
-
The DataAccessException Hierarchy
-
JDBC DAOs
-
JdbcTemplate and RowMapper
-
Object/Relational Mapping
-
Hibernate® DAOs
-
Transaction Control
-
AOP vs. Annotations
-