Subscribe to Newsletter

Print

Core Spring Training Course

Overview

Core Spring is SpringSource's four-day flagship Spring training course, developed by Rod Johnson - "The Father of Spring" and founder, CEO of SpringSource Inc. It covers Spring Framework and related projects in depth. In this course, students build a Spring-powered JEE application that demonstrates the Spring Framework and other Spring technologies in an intensely productive setting - 50% theory and 50% hands-on lab.

The Core Spring course not only focuses on explaining Spring features and how to use them, but also on fundamental architectural issues. It's important to know how to use certain parts of a framework, but it's even more important to be able to decide when to use them.

Completion of the training entitles the students to write the prestigious "SpringSource certified Spring Professional" exam and the cost of examination voucher, worth Rs. 12,000, is waived off.

Students who have completed this course should enroll next in Rich Web Applications with Spring or Enterprise Integration with Spring depending on their focus.

Objectives

At the end of Core Spring training course, the partcipants will be able to:

Recommended Training Paths - Core Spring
  • Use the Spring Framework to develop Java applications
  • Use dependency injection to set up and configure applications
  • Test Spring-based applications
  • Set up Spring configuration using XML, annotations, and Java configuration
  • Use Hibernate and JDBC with Spring to access relational databases
  • Use Spring support for transactions
  • Use aspect-oriented programming (AOP) to add behavior to objects
  • Develop a basic Web application with Spring MVC
  • Use Spring Security to secure Web applications
  • Use Spring with RMI, HttpInvoker, and JMS for remote communication
  • Add management with the JMX API

Suggested Audience - Developers, Architects

Duration - 4 Days

Prerequisites

Must Have

  • Comfortable developing applications using Java

Good to Have

  • Exposure to Enterprise Applicaiton Development
  • Eclipse IDE
  • XML

Syllabus

1. Introduction to Spring
  • The Spring application context
  • XML configuration
  • Working with existing singletons and factories
  • Working with multiple configuration files
2. Understanding the Bean Life Cycle
  • XML namespaces
  • Initialization, use, and destruction phases
  • Working with Spring interceptors
  • Externalizing constant values into properties files
  • Bean scopes
3. Simplifying Application Configuration
  • Bean definition inheritance
  • Inner beans
  • p and util namespaces
  • Dependency injection of collections
  • Spring Expression Language (SpEL)
4. Annotation-Based Dependency Injection
  • Autowiring and component scanning
  • Stereotype annotations
  • Java-based configuration
  • Mixing configuration styles
  • When to use XML, annotations, and Java configuration
5. Testing a Spring-Based Application
  • Annotations for integration testing with Spring (using JUnit)
  • Advanced concepts: application context caching and the @DirtiesContext annotation
6. Aspect-Oriented Programming
  • What problems does AOP solve?
  • Differences between Spring AOP and AspectJ
  • Defining pointcut expressions
  • How to use the types of advice: around, before, after
7. Data Access and JDBC with Spring
  • How Spring integrates with existing data access technologies
  • DataAccessException hierarchy
  • jdbc namespace
  • Simplifying jdbc access using the Spring JdbcTemplate
8. Integrating Spring with Hibernate
  • Quick introduction to ORM with Hibernate
  • Benefits of using Spring with Hibernate
  • Hibernate configuration in Spring
  • Exception handling
9. Database Transactions with Spring
  • Declaring a Spring Transaction Manager
  • @Transactional annotation
  • Configuring isolation levels
  • Configuring transaction propagation
  • Transactions and integration testing
10. Spring in a Web Application
  • Configuring Spring in a Web application (using Spring MVC, Struts, JSF)
  • Introduction to Spring MVC
  • Defining Spring MVC controllers using annotations
  • Spring MVC in the view layer
  • MVC namespace (new in Spring 3.0)
11. Spring Security
  • What problems does Spring Security solve?
  • Configuring authentication
  • Intercepting URLs
  • The Spring Security tag library for JSPs
  • Security at the method level
  • Customizing the Spring Security filter chain
12. Remoting
  • Problems with traditional RMI
  • Using Spring remoting over RMI
  • Using the Spring HttpInvoker for remote access over HTTP
13. JMS
  • Introduction to JMS
  • Configuring JMS resources with Spring
  • Sending and receiving messages using the Spring JmsTemplate and message listener containers
14. JMX
  • Introduction to JMX
  • Configuring Spring to export MBeans automatically
  • Exporting a Spring bean as an MBean