Core Spring

Course Code: SPRINGC

Duration: 4 days

 
 

Core Spring Course Overview

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.

Course Objectives

This course aims to provide the delegate with the knowledge to be able to develop (or contribute to the development of) a Spring web app which exposes a RESTful API and that both reads and writes data to/from persistent storage. The web app should be secure insofar as it authenticates users, and restricts access. The delegate should also be aware of Spring Boot, Reactive Programming, Spring WebFlux, and Spring Cloud.

Who will the Course Benefit?

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

Skills Gained

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

Core Spring Training Course

Course Introduction

  • Administration and Course Materials
  • Course Structure and Agenda
  • Delegate and Trainer Introductions

Session 1: INTRODUCTION TO SPRING

  • 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

Session 2: DEPENDENCY INJECTION (DI)

  • 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)

Session 3: ASPECT ORIENTED PROGRAMMING (AOP)

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

Core Spring Training Course

Session 4: SPRING MVC

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

Session 5: REST

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

Session 6: WEBSOCKET

  • WebSocket Handlers
  • Configuration with Java
  • Configuration with XML

Session 7: INTRODUCTION TO SPRING WEBFLUX (V5 ONLY)

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

Core Spring Training Course

Session 8: SPRING DATA SOURCES

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

Session 9: JDBC

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

Session 10: ORM

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

Session 11: TRANSACTIONS

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

Core Spring Training Course

Session 12: SPRING SECURITY

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

Session 13: SPRING BOOT

  • Starter Dependencies
  • Autoconfiguration
  • CLI
  • Actuator
  • Spring Boot Applications

Session 14: INTRODUCTION TO SPRING CLOUD

  • Microservice Architecture
  • Service Registration
  • Load Balancing
  • and more...
Notes:
  • 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.

Requirements

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) though this is not essential. This knowledge can be obtained by attendance on the pre-requisite Java Programming 1 / Java Developer course.

Pre-Requisite Courses

Follow-On Courses

Course Reviews

The pace was good. There was a brief introduction (a few hours in the morning) to get everyone up to speed, which was about right and meant we could progress quickly to the main part of the course. There was plenty of opportunity to ask questions and participate, but importantly we were not pressured to do so. I also liked that the last few hours of the course provided an overview of more advanced features, which gave us an idea of what we could look into after completing the course.

Adam - Government - May 2022


Stuart was excellent at explaining the concepts from the ground up. He answered all our queries and helped show things in an understandable way. He provided implementations of all the topics that showed their best uses and helped me understand and use many good Java practices throughout.

Phillip - Government - April 2022


Thank you Stuart for all the information and explanations you shared with us in these four days. I think it was very deep course, but we arrived it in a simple and easy way. We look forward to other upcoming courses with you.

Sarah - Government - January 2022


I really recommend this course. Stuart has complete mastery of the subject covered and excellent teaching methodology.

Jonas - Government - November 2021


Another fantastic course delivered exceptionally well as usual by Stuart, my third time doing a course Stuart has covered and all 3 have been fantastic.

Lewis - Junior Software Engineer - July 2021


Great course, Stuart was awesome and helpful as per usual. Good to have a case study to reflect back on and work on throughout course.

Alexander - SDET - June 2021


Public Scheduled Events

Classroom & Live Virtual Instructor-Led Training

Duration: 4 days

Price: £1,900.00 exc. VAT 


Start Date Options Spaces  
02 Aug 2022
StayAhead Virtual Courses available 
Spaces Book Now 
11 Oct 2022
StayAhead Virtual Courses available 
Spaces Book Now 
28 Nov 2022
StayAhead Virtual Courses available 
Spaces Book Now 
24 Jan 2023
StayAhead Virtual Courses available 
Spaces Book Now 
20 Mar 2023
StayAhead Virtual Courses available 
Spaces Book Now 
23 May 2023
StayAhead Virtual Courses available 
Spaces Book Now 


Start Date Options Spaces  
04 Jul 2022
StayAhead Virtual Courses available 
Spaces Book Now  POA
11 Jul 2022
StayAhead Virtual Courses available 
Spaces Book Now  POA
18 Jul 2022
StayAhead Virtual Courses available 
Spaces Book Now  POA
 

Live Virtual Classroom

 
Join live instructor-led classroom training from the comfort of your home or office.
All the convenience and benefits of the classroom experience without the hassle and costs of travel and accommodation.
 
 



Our Customers Include

 
missing image
missing image
missing image
missing image
missing image
missing image
missing image
missing image
missing image
missing image
missing image
missing image
missing image
missing image
missing image
missing image
missing image
missing image
missing image
missing image
missing image
missing image
missing image
missing image
 
 



Our Course Curriculum

 
 
 
 
Facebook LinkedIn Twitter Instagram E-Mail
 
+44 (0)20 7600 6116
Enquiries@StayAhead.com
Copyright © 2022 StayAhead Training Ltd
Cookies   /   Privacy Policy