5 Day(s)


This Spring Training course is designed to be everything you need to become a competent Spring programmer.

This second edition was fully re-recorded using Spring 4, and features additional coverage of Spring Annotations and the Expression Language. It features all of the topics from the previous edition, plus the Spring 3 Upgrade course.

The material is also compatible with Spring 3.x and 2.5, and much of the course is suitable for the legacy 2.0 versions.

Each chapter on the Spring Video Training is accompanied by practical work, where you will build a professional standard system, almost from scratch.

We provide Spring Framework example code - all the code you need to get started, plus a full set of sample solutions.

The Spring Framework tutorials last approximately 20 hours, including practical work. There is a lot of hands work for you to complete, so expect to take at least a week to finish this course - it's equivalent to a week's Spring Framework Training Course.


The course is designed to be accessible to anyone with a reasonable knowledge of basic Java. You will need to be able to write classes and create objects. You will need to know what interfaces are, although an in depth description of them is given.

Course Specifics

Course Outline

Chapter 1 - Course Introduction
An overview of the Spring Training Course, followed by an overview of what Spring is, and how is competes with the official EJB standard.

Chapter 2 - Dependency Injection
The most important concept in Spring. Here we look at what it is, and why you need a Container to support it.

Chapter 3 - The Spring Container
We now use Spring for the first time, and we start by practicing dependency injection using the Spring container.

Chapter 4 - Wiring in Spring
Defining dependencies between objects is often called "Wiring" and in this chapter we do our first significant wiring.

Chapter 5 - Practical Session 1
Your first chance to try a Spring tutorial - you'll begin building your first real application.

Chapter 6 - More Container Concepts
Object dependencies, Singletons/Prototypes and Constructor vs Setter Injection.

Chapter 7 - The Spring IDE
A useful plugin for Eclipse that makes your Spring Java life much easier.

Chapter 8 - Practical Session 2
Now you'll expand your wiring in your example spring application.

Chapter 9 - The JDBCTemplate
This feature of the Spring Framework enables you to use JDBC but in a much more elegant way.

Chapter 10 - Connection Pools
In Spring we can wire a production standard connection pool. We use Apache DBCP, but you can use C3PO or Proxool in the same way.

Chapter 11 - Exceptions and JNDI
How does the JDBCTemplate handles exceptions? And if you want to deploy to an application server, you can and we show how to connect to an existing connection pool using Java JNDI.

Chapter 12 - Practical Session 3
Now you will get the chance to wire your own JDBCTemplate, with a connection pool.

Chapter 13 - Beginning AOP
AOP is a core feature of Spring, it is needed for many features, especially Transactions. In this chapter, the Java training you will need to understand the proxy design pattern - a key feature of AOP.

Chapter 14 - Spring AOP Basics
Now we see how Spring applies the proxy pattern for its AOP framework.

Chapter 15 - AspectJ Pointcut Syntax
Since Spring 2.0, you can use a powerful syntax from AspectJ to configure your AOP.

Chapter 16 - Practical Session 4
Your chance to follow a full AOP tutorial - you'll set up some timing advice.

Chapter 17 - Application Transactions
Perhaps the most useful of all Spring features - Application Transactions are essential to a multi tier application. What are they, and how to configure them using Spring Annotations.

Chapter 18 - Transaction Propagation
The dark art of PROPAGATION_REQUIRED, SUPPORTS, NOT_SUPPORTED, REQUIRES_NEW, NEVER and MANDATORY. A full tutorial on Spring transactions.

Chapter 19 - Rollbacks
Checked exception don't trigger rollbacks, unless you do something about it.

Chapter 20 - Isolation Rules (optional)
Find out about SERIALIZABLE, REPEATABLE_READ, READ_COMMITTED and READ_UNCOMMITTED. It's easy to set these levels in Spring.

Chapter 21 - Practical Session 5
Now it's your turn to add transaction to your Spring Framework Example code.

Chapter 22 - Wiring using annotations
The most controversial change in Spring since the beginning. We look at Annotations and discuss if they are a good thing or not...

Chapter 23 - Practical Session 6
If you want to try annotations in your Spring Sample Code, you can change your wiring in this chapter.

Chapter 24 - Spring and Hibernate
Spring integrates easily with Hibernate - here we look at the HibernateTemplate.

Chapter 25 - Spring and JPA
As with Hibernate, you can integrate with JPA as well. Since Spring 3, we need to use @PersistenceContext.

Chapter 26 - Practical Session 7
Your chance to try some Hibernate or JPA Training.

Chapter 27 - Spring and myBatis
An under appreciated framework, myBatis is very elegant and can be used easily from Spring.

Chapter 28 - The Expression Language
New to Spring 3, the Expression Language (SpEL) can be useful for some advanced requirements. This SpEL tutorial will get you started.

Chapter 29 - Integration Testing
Integration Testing can be done using a standard JUnit test, but it lead to inefficiencies. See how to fix this, in this final major chaper.

Chapter 30 - Practical Session 8
Your chance to make your Spring Sample Code more robust - add some integration tests.

Chapter 31 - Course Summary
A closedown of the course; where to go from here; the best books available and a brief overview of Spring MVC.

Chapter 32 - Practicals and Code
All of the code you need for the course, including all of the Spring distribution.

Thinking about Onsite?

If you need training for 3 or more people, you should ask us about onsite training. Putting aside the obvious location benefit, content can be customised to better meet your business objectives and more can be covered than in a public classroom. It's a cost effective option.

Submit an enquiry from any page on this site, and let us know you are interested in the requirements box, or simply mention it when we contact you.

Upcoming Dates

Course Location Days Cost Date
5 265 £265 2018-07-16
5 265 £265 2018-07-16
5 2500 £2500 2017-10-31
5 2500 £2500 2017-10-19
5 2500 £2500 2017-09-12
5 2500 £2500 2017-08-28
5 2500 £2500 2017-08-21
5 2500 £2500 2017-08-14
5 2500 £2500 2017-08-08
5 2500 £2500 2017-08-03
5 2500 £2500 2017-07-24