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
Working with Bean Properties
- Configuring Value Properties, Property Conversions, Setter / Constructor Injection
Spring Expression Language for Configuration
- Configuring and using lists, sets, etc.
Additional Capabilities
- Factory Methods, Bean Aliases, Definition Inheritance (Parent Beans)
The Spring Container and API
- ApplicationContext
- ClassPathXmlApplicationContext, FileSystemXmlApplicationContext, Constructors, Usage
- Resource Access – Overview, Resource Implementations
- Validation
- Overview, JSR-303
- Declarative Validation, @NotNull, @Size, @Min, etcConfiguration, 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 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 Language
- Validation