SPRING
WHAT IS SPRING?
Overview of the Spring Framework
Spring Modules and architecture
A Simple Example
Wiring Beans
Configuring a Properties File
Beans and Containers
Spring Containers
Spring Configuration File
Spring Beans
Using the Container
The BeanFactory Interface
The ApplicationContext Interface
Singleton vs. Prototype
Bean Naming
Dependency Injection
Setter Injection
Constructor Injection
Autowiring
Autowiring through configuration
Autowiring by type and by name
Aspect-Oriented Programming
BUILDING SPRING WEB APPLICATIONS
Following the life of a request
Setting up Spring MVC
Writing a simple controller
Testing the controller
Defining class-level request handling
Passing model data to the view
Accepting request input
Taking query parameters
Taking input via path parameters
Processing forms
Writing a form-handling controller
Validating forms
Understanding view resolution
Creating JSP views
Defining a layout with ApacheTiles views
ALTERNATE SPRING MVC CONFIGURATION
Customizing DispatcherServlet configuration
Adding additional servlets and filters
Declaring DispatcherServlet in web.xml
Processing multipart form data
Configuring a multipart resolver
Handling multipart requests
Handling exceptions
Mapping exceptions to HTTP status codes
Writing exception-handling methods
SECURING WEB APPLICATIONS
Getting started with Spring Security
Intercepting requests
Authenticating users
SPRING IN THE BACK END
Hitting the database with Spring and JDBC
Configuring a data source Using JNDI data sources
Using a pooled data source
Using JDBC with Spring Working with JDBC templates
JAVA PERSISTANCE WITH HIBERNATE
GETTING STARTED WITH ORM
Understanding object/relational persistence
Starting a project
Domain models and metadata
MAPPING STRATEGIES
Mapping persistent classes
Mapping value types
Mapping inheritance
Mapping collections and entity associations
Advanced entity association mappings
Complex and legacy schemas
TRANSACTIONAL DATA PROCESSING
Managing data
Transactions and concurrency
Fetch plans, strategies, and profiles
Filtering data
WRITING QUERIES
Creating and executing queries
The query languages
Advanced query options
Customizing SQL
BUILDING APPLICATIONS
Designing client/server applications
Building web applications
Scaling Hibernate