Session 1: Introduction
- Overview of Spring Technology
- Shortcomings of Java EE, Spring Architecture
- Spring Introduction
- Managing Beans, The Spring Container, IoC, DI
- Configuration Metadata - XML, @Component, Auto-Detecting Beans
- Dependencies and Dependency Injection (DI)
- Dependency Inversion, Dependency Injection (DI) in Spring, DI Configuration - XML, @Resource
Session 2: More about Bean Properties
- Working with Properties
- Configuring Value Properties, Property Conversions, Setter / Constructor Injection
- Spring Expression Language for Configuration
- Collection Valued Properties
- Configuring and using lists, sets, etc.
- Additional Capabilities
- Factory Methods, Bean Aliases, Definition Inheritance (Parent Beans)
Session 3: The Spring Container and API
- ApplicationContext
- ClassPathXmlApplicationContext, FileSystemXmlApplicationContext, Constructors, Usage
- Resource Access - Overview, Resource Implementations
- Validation
- Overview, JSR-303
- Declarative Validation, @NotNull, @Size, @Min, etc
- Configuration, Injection
- Bean Scope and Lifecycle
- Bean Scope Defined, Configuring, Inner Beans, Bean Creation Lifecycle, Lifecycle Callbacks, BeanPostProcessor, Event Handling
- MessageSources
- Defining and Using Resource Bundles, Localization/I18N
- Annotation Driven Configuration
- Stereotypes: @Component, @Service, @Controller, @Repository
- Java EE 5 Annotation Support
- Defining Custom Annotations
- Autowiring
- @Autowired on setters, constructures, methods, fields
- Injecting resources like ApplicationContext
- Fine tuning with @Qualifier
- Java Based Bean Metadata (JavaConfig)
- Overview - code-centric Configuration
- @Confguration, @Bean, and @Value
- Importing and @Import
- Autowiring in Configuration Classes
- Mixing XML Configuraiton and @Configuration
- XML vs Annotation Based Configuration
- Other Capabilities
- SpEL - Spring Expression LanguageValidation
|
Session 4: Database Access with Spring
- Issues with JDBC / 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
- Overview of Template Approach, SessionFactory configuration
- Using Contextual Sessions
- Using Spring with JPA
- LocalEntityManagerFactoryBean, LocalContainerEntityManagerFactoryBean, JNDI, PersistenceUnitManager
- DAO Support - @PersistenceUnit, @PersistenceContext
Session 5: Aspect Oriented Programming (AOP)
- Overview of AOP
- AOP Basics, Aspect, Joinpoint, Advice, Pointcut
- Introduction to Spring AOP
- Capabilities, Configuration (Annotation Based and XML), Weaving, Joinpoints
- Using Aspects
- Defining Advice, Configuring Pointcuts, Targets and Proxies
- XML Configuration with <aop:>
- 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: Introduction to Spring Web Integration
- Integrating Spring with Java EE Web Apps
- ContextLoaderListener
- WebApplicationContext
- Using Spring beans in Wep app controller logic
Session 8: Overview of Spring Security
- Overview - Capabilities, Architecture
- Introduction to Spring Security
- HTTP Security
- Method Security
- Annotation-Based Security
- Expression-Based Access Control
- Authentication Providers
|