Core Spring

4 Day Course
Hands On

Book Now - 2 Delivery Methods Available:

Classroom Virtual Classroom Private Group - Virtual Self-Paced Online


The Spring Framework is the leading Java EE solution for enterprise software.

This course covers Spring from Version 4 upwards, currently delivered using Version 5. It comprises sessions dealing with Dependency Injection (DI); Aspect Oriented Programming, (AOP); Spring Web including MVC, REST, and WebSocket; Spring Data including JDBC, ORM, and Transaction Management; Spring Security; and Spring Boot. It also includes an introduction to Reactive Programming, Spring WebFlux, and Spring Cloud.

Exercises and examples are used throughout the course to give practical hands-on experience with the techniques covered.


The delegate will learn and acquire skills as follows:

  • Obtaining Spring Beans using DI
  • Implementing cross-cutting concerns using AOP
  • Building a Spring MVC web app
  • Building a REST API with Spring MVC
  • Building a WebSocket service
  • Using a JDBC Template
  • Integrating a Spring app with Hibernate and JPA
  • Transaction Management
  • User authentication
  • URL and method-level authorization
  • Building a simple Spring Boot app

Target Audience

The Core Spring course will benefit Java developers who are new to Spring and want to develop large and complex enterprise-level applications.

Additional Information

  • Course technical content is subject to change without notice.
  • Course content is structured as sessions, this does not strictly map to course timings. Concepts, content and practicals often span sessions.

Training Partners

We work with the following best of breed training partners using our bulk buying power to bring you a wider range of dates, locations and prices.


Collapse all

Introduction to Spring (8 topics)

  • What is Spring
  • Introduction to Dependency Injection
  • Introduction to Aspect Oriented Programming
  • Introduction to Templates
  • Application Context
  • The Lifecycle of a Spring Bean
  • Spring Modules (Projects)
  • What's new in Spring 5.0

Spring Data Sources (5 topics)

  • Embedded Data Source (for development and testing)
  • JDBC Driver
  • Connection Pool
  • JNDI
  • Profiles

Dependency Injection (DI) (9 topics)

  • DI configuration options
  • DI with XML
  • DI with Java
  • Autowiring (DI with Annotations)
  • Importing and Mixing Configurations
  • Environments and Profiles
  • Conditional Beans
  • Bean Scope
  • Spring Expression Language (SpEL)

Aspect Oriented Programming (AOP) (4 topics)

  • Terminology
  • Aspects with XML
  • Aspects with Annotations
  • AspectJ

Spring MVC (6 topics)

  • The Lifecycle of a Request
  • Spring Controllers
  • Request Parameters
  • Form Processing
  • View Resolution
  • Views: JSP, Thymeleaf et al.

REST (4 topics)

  • REST Endpoints with Spring MVC
  • HTTP Message Converters
  • Errors and Headers
  • Consuming REST Resources using RestTemplate

WebSocket (3 topics)

  • WebSocket Handlers
  • Configuration with Java
  • Configuration with XML

Introduction to Spring Webflux (V5 Only) (5 topics)

  • Introduction to Reactive Programming
  • HTTP, Web, and Dispatcher Handlers
  • Annotated Controllers
  • Functional Endpoints
  • and more...

JDBC (3 topics)

  • JDBC Templates
  • Using a JDBC Template with Lambdas
  • Named Parameters

ORM (3 topics)

  • Integrating Hibernate with Spring
  • Application-managed JPA
  • Container-managed JPA

Transactions (4 topics)

  • Transaction Strategy
  • Synchronizing Resources
  • Declarative Transaction Management
  • Programmatic Transaction Management

Spring Security (6 topics)

  • User Details Services
  • Authentication
  • Authorization (URL Interception)
  • JSP Security Tag Library
  • Method-level Security
  • Filter Chain

Spring Boot (5 topics)

  • Starter Dependencies
  • Autoconfiguration/li>
  • CLI
  • Actuator
  • Spring Boot Applications

Introduction to Spring Cloud (4 topics)

  • Microservice Architecture
  • Service Registration
  • Load Balancing
  • and more...


Delegates attending this course should be competent Java developers able to build simple applications that exploit APIs including Collections, IO, and JDBC. Delegates would also benefit from having some previous experience with Servlets and JSP (or equivalent technology).

This knowledge can be obtained by attendance on the pre-requisite Java Programming 2 and Developing Applications with Java EE courses.

Additional Learning

The courses below may help you meet the knowledge level required to take this course.

Scheduled Dates

Please select from the dates below to make an enquiry or booking.


Different pricing structures are available including special offers. These include early bird, late availability, multi-place, corporate volume and self-funding rates. Please arrange a discussion with a training advisor to discover your most cost effective option.

Code Location Duration Price Jun Jul Aug Sep Oct Nov
Virtual Classroom (London)
4 Days $2,280

Course PDF


Share this Course


Recommend this Course