Framework vs. library, Tight coupling vs. Loose coupling, Spring Characteristics. Why Spring? EJB vs. Spring, Inversion of Control and Dependency Injection?, Spring Modules and SpringSource Projects .
Spring Dependency Injection
Spring Schema Configuring Beans in Spring IOC container (Bean Wiring), Instantiating Spring IOC container, Specifying bean references- Dependency Injection Primitives and Strings, object references, Using Collection(set,list,map) for bean properties, Constructor vs. Setter Injection, Dependency checking of beans, Dependency checking using Annotations, Spring Auto Wiring with XML, Spring Auto Wiring with Annotations, Specifying data types for elements, Creating Beans using static factory and Instance Factory method, Setting bean scopes, Bean aware interfaces, Internationalization of messages, Loading Resources, Handling Application events.
Classic Spring AOP
Crosscutting Concerns & AOP Introduction, Classic Spring AOP ,Spring 2.X AOP and AspectJ introduction, Static and Dynamic Proxy, Classic Spring Advices,Before,AfterReturning,Around and Throws Advice, Pointcuts and Advisors, Creating proxies automatically.
Spring 2.x AOP
Enabling AspectJ support in XML configuration, Declaring Aspects using AspectJ Annotations, AspectJ annotations –Before, After returning, After throwing,After,Around, Using Join Point and Point Cut, Writing AspectJ Point Cut Expressions.
Spring JDBC & Transaction
JDBC vs. Spring JDBC templates, Using different JDBC Templates to query the database, Using different JDBC Templates to update the database, Using named parameters in JDBC template, Handing exceptions in Spring JDBC framework, Modeling JDBC operations as fine grained objects, Programmatic Transaction and declarative transaction management with Spring Transaction Manager.
Spring ORM Support
Problems in using ORM framework directly, Resource Factories and Hibernate Contextual Session, Spring Hibernate integration.
Spring MVC Framework
MVC Architecture – Using a Front Controller Framework, Analyzing Spring Web Application Flow, Understanding the usage of different type of controllers - AbstractCommandController , SimpleFormController , AbstractWizardFormController, MultiActionController, Understanding the usage of different type of View Revolvers, Understanding the usage of different type of Handler Mappings, Creating Controllers with Annotations, Grouping multiple actions into a controller, Internationalization in Web application, Introducing Security in Web Application & Testing.
Spring Testing and Spring Security
Creating Junit test, Spring Mock objects, Unit Testing Spring MVC application using Junit and Spring Framework classes, Spring Security Overview, Authenticating and authorizing users in a Spring web application using spring security API’s.