Duration:
3 days
Hands-on:
Skills
Gained:
Understand the core principles of Spring, and of Dependency
Injection (DI)/Inversion of Control
Use the Spring Core module and DI to
configure and wire application objects (beans) together
Understand and use
the complete capabilities of the Core module, such as lifecycle events, bean
scopes, and the Spring API
Work with the DAO and/or ORM modules to
create a well structured persistence layer with JDBC or Hibernate
Understand
and use Spring 2.0's powerful new AOP capabilities for programming cross-cutting
concerns across multiple points in an application
Understand and use Spring's
transaction support, including Spring 2.0's easy to use tx/aop XML configuration
elements, and Java 5 annotations
Understand how Spring MVC works, and how to
build well-structured Web applications with it
Understand the basics of
Spring Security, and how to secure Web apps and Spring managed beans with
it
Course Details:
Session 1:
Introduction
Overview of Spring Technology
Shortcomings of Java
EE, Spring Architecture
Spring Introduction
Managing Beans, Configuration
Metadata, The Spring Container, IoC, DI
Dependencies and Dependency Injection
(DI)
Dependency Inversion, Dependency Injection (DI) in Spring, DI
Configuration, Advantages
Session 2: More about Bean
Properties
Working with Properties
Configuring Value Properties,
Property Conversions, Setter / Constructor Injection
Collection Valued
Properties
Configuring and Using <list>, <set>,
<map>, <props>
Additional Capabilities
Factory Methods, Bean
Aliases, Definition Inheritance (Parent Beans), Autowiring
Session
3: The Spring Container and
API
ApplicationContext
ClassPathXmlApplicationContext,
FileSystemXmlApplicationContext, Constructors, Usage
Resource
Access
Overview, Resource Implementations
Bean Scope and Lifecycle
Bean
Scope Defined, Configuring, Inner Beans, Bean Creation Lifecycle, Using the
Lifecycle Interfaces (e.g. BeanFactoryAware), BeanPostProcessor, Even
Handling
MessageSources
Defining and Using Resource Bundles,
Localization/I18N
Annotation Driven Configuration
@Required,
RequiredAnnotationBeanPostProcessor
Dependency Injection with
@Resource
@Component, Auto-Detecting Beans, Other
Stereotypes
Session 4: Database Access with
Spring
Issues with JDBC
Examination of Typical JDBC
Flow
Introduction to Spring DAO Support
Spring Database API,
(Simple)JdbcTemplate, (Simple)JdbcDaoSupport, DataSources,
Working With
and Configuring, <list>, <set>, With Bean Refs, <map>,
<props>
Queries and Inserts
RowMapper, ParameterizedRowMapper,
Passing Arguments, queryForObject, query, update
Additional API
Capabilities
Additional query methods, Passing Type Arguments, queryForList,
FetchSize, MaxRows
Using Spring with Hibernate
HibernateTemplate,
LocalSessionFactoryBean, Hibernate Configuration,
HibernateDaoSupport,
Configuring a Hibernate DAO
HibenateTemplate Query
Methods, Using HibernateCallback, Using Contextual
Sessions
Session 5: Aspect
Oriented Programming (AOP)
Overview of AOP
AOP Basics, Aspect,
Joinpoint, Advice, Pointcut
Introduction to Spring AOP
Capabilities, New
2.0 Configuration (XML and @AspectJ), Weaving, Joinpoints
Using
Aspects
XML Configuration with <aop:>
Defining Advice, Configuring
Pointcuts, Targets and Proxies
AspectJ Pointcuts, Autoproxies
Using
@AspectJ Annotations
@ApsectJ Annotations, Declaring
Advice
Session 6: Spring Transaction (TX)
Management
Intro to Spring Transaction Management
Overview,
Component TX Model, TX Propagation, Declarative Transactions,
TransactionManagers
Using Spring Transactions
Annotation Configured
Transactions
@Transactional and its settings
XML Configured
Transactions
new <tx:*> elements, Configuring tx:advice, and
tx:attributes
Defining the TX advisor
Session 7: Overview of
Spring Web MVC
Overview - Capabilities, Architecture
Introduction
to Spring MVC
DispatcherServlet, Handlers, HandlerMappings
Command
Controllers, Commands, View Resolvers
Forms
Spring Form Tags,
Writing/Processing Forms
Session 8: Overview of Spring
Security
Overview - Capabilities, Architecture
Introduction to
Spring Security
HTTP Security
Method Security
Authentication
Providers