Mastering Spring 4.2

Mastering the Spring 4.x Framework is a five-day hands-on Spring training course geared for experienced Java developers who need to understand what the Spring Framework is in terms of today's systems and architectures, and how to use Spring in conjunction with other technologies and frameworks.

Retail Price: $2,595.00

Next Date: Request Date

Course Days: 5


Request a Date

Request Custom Course


Mastering the Spring 4.x Framework is a five-day hands-on Spring training course geared for experienced Java developers who need to understand what the Spring Framework is in terms of today's systems and architectures, and how to use Spring in conjunction with other technologies and frameworks. This leading-edge course provides added coverage of Spring's Aspect-Oriented Programming and the use of Spring Boot, as well as Spring security.  It includes complete coverage of all new features in Spring 4.x.  Students will gain hands-on experience working with Spring, using Maven for project and dependancy management, and, optionally, a test-driven approach (using JUnit) to the labs in the course.

 

The Spring framework is an application framework that provides a lightweight container that supports the creation of simple-to-complex components in a non-invasive fashion.  Spring's flexibility and transparency is congruent and supportive of incremental development and testing.  The framework's structure supports the layering of functionality such as persistence, transactions, view-oriented frameworks, and enterprise systems and capabilities. 

 

This course targets Spring 4.x, which includes full support for Java 8 and JEE 7 (earlier versions of Java and JEE continue to be supported). Spring supports the use of lambda expressions and method references in many of its APIs.

 

Spring makes JEE development easier. Spring simplifies common tasks and encourages good design based on programming to interfaces. Spring makes your application easier to configure and reduces the need for many JEE design patterns. Spring puts the OO design back into your JEE application, and it integrates nicely with many view technologies and the new features of HTML5.


This course provides a solid understanding of what Spring brings to the table and how to use Spring in the context of other technologies and frameworks. 

 

Students are taken on an in-depth tour of the basic Spring framework, initially examining concepts such as Inversion of Control and Dependency Injection, and then working with the container and basic components.  They will examine the improved Spring 4.x configuration management options including XML, annotations, JavaConfig, and Spring Expression Language.   The course then moves into the areas of persistence and transactions, looking at various options.  Students will then look at options for handling the view portion of an MVC web architecture. 

 

Working in a dynamic, lab-intensive hands-on coding environment, students will learn to:

  • Explain the issues associated with complex frameworks such as JEE and how Spring addresses those issues
  • Understand the relationships between Spring and JEE, AOP, IOC, JDBC, Hibernate, JSF, Struts, JMS, and EJBs.
  • Write applications that take advantage of the Spring container and the declarative nature of assembling simple components into applications.
  • Understand how to configure the framework with XML, annotations and JavaConfig as well as explore the advantages of each option.
  • Understand and work on integrating persistence into a Spring application.
  • Explain Spring's support for transactions and caching
  • Understand and work with various options for integrating view-oriented frameworks for web applications into Spring.
  • Work with Spring Boot and JavaConfig to more effectively and efficiently develop Spring applications.
  • Work with various Spring Application Events, implementing and registering listeners, and monitoring for transactional event

 

Course Topics / Agenda


   

 

Session: Introduction to Spring

 

Lesson: The Spring Framework

  • Understand the value of Spring
  • Explore Dependency Injection (DI) and Inversion of Control (IoC)
  • Configuring collaborators
  • Understand built-in property editors
  • Tutorial: Setup Eclipse Oxygen for Using Maven

 

Lesson: Configuring Spring

  • Discover the Spring Container
  • Introduce the various ways to configure the Spring context
  • Initialize the Spring container
  • Accessing beans in the Spring container
  • Configure beans using XML
  • Resolving bean dependencies using XML
  • Exercise: Create a Simple Spring program using XML configuration

 

Lesson: Advanced Configuration

  • Use Spring's special factory beans
  • Re-use bean definitions in the configuration file using the "parent" bean concept
  • Use property placeholders in the configuration file
  • Create custom property editors
  • Become familiar with container post-processors
  • Exercise: Configuring Dependencies
  • Exercise: Advanced XML Configuration

 

Lesson: Annotation based configuration

  • Introduce Spring annotation for defining dependencies
  • The @Autowired annotation
  • Stereotyping Annotations
  • Enabling and filtering the component scan
  • Qualifying injection points
  • Lifecycle annotations
  • The @Value annotation
  • Exercise: Create a Simple Spring program using annotations

 

Lesson: Java-based Configuration

  • Introduce Java-based configuration
  • The @Configuration and @Bean annotations
  • Define bean dependencies
  • Define bean scopes
  • Bootstrapping Java Config context
  • Injection in Configuration classes
  • Exercise: Create a Simple Spring program using JavaConfig

 

Lesson: More Java-based configuration

  • Registering BeanFactoryPostProcessorT
  • he Environment API
  • Using context Profiles
  • Conditionally loading beans and configurations
  • Using properties in Java based configuration
  • The DependsOn and Lazy annotations
  • Exercise: Java Based Configuration
  • Exercise: Using Profiles

 

Session: Persistence in Spring

 

Lesson: Overview: Persistence in Spring

  • DAO Implementation
  • Transaction Support
  • Spring Support for JCache
  • Spring Data: JPA to NoSQL

 

Lesson: Spring JDBC

  • JdbcDaoSupport - JDBC DAO Implementation
  • The jdbcTemplate
  • Exception Handling
  • Operation Classes
  • Exercise: Using Spring JDBC

 

Session: Spring and the Web

 

Lesson: MVC Overview

  • The DispatcherServlet
  • Workflow of Request Handling
  • Using Handler Mappings
  • ModelAndView and View
  • Controllers
  • Spring Form Tags
  • Exercise: Using Spring MVC

 

Session: Advanced Topics

 

Lesson: Introduction to Aspect Oriented Programming

  • Aspect Oriented Programming
  • Cross Cutting Concerns

 

Lesson: Spring AOP

  • Spring's AOP in a Nutshell
  • The Three Technologies of "Weaving"
  • Spring Advice Types
  • Exercise: Spring AOP - Combined Advice

 

Session: Spring Boot

 

Lesson: Spring IO Platform

  • Understand the Spring IO Platform
  • Understand the IO Bill of Materials
  • Understand the IO Foundation
  • Learn how the IO Execution will be leveraged
  • Learn how Spring Cloud is used for Platform Coordination

 

Lesson: Spring Boot Overview

  • What is Spring Boot
  • Explore Spring Boot starters
  • Examine Spring Boot’s AutoConfiguration as well as its command-line interface (CLI)
  • Understand the Spring Boot Actuator

 

Lesson: Spring Boot Introduction

  • Spring Boot JPA Starter
  • Examine Spring Boot’s AutoConfiguration
  • Understand the Spring Conditionals
  • Understand Spring Boot DevTools
  • Exercise: Create a "REST JPA Respository"

 

Lesson: Advanced Spring Boot

  • Explore additional Spring Boot starters
  • Bootstrapping Spring Boot
  • Understand Spring Boot Actuators
  • Create and run a Spring Thymeleaf MVC application
  • Exercise: Create a “Thymeleaf MVC With JPA Repository”

 

Session: Spring Security Framework

 

Lesson: Enterprise Spring Security

  • Spring Security Framework
  • Security Interceptors
  • Authentication Managers
  • Wiring in Encoders and Salts
  • Access Decision Managers

 

Lesson: Spring Web Security

  • Spring Security Transparent to Client
  • Standard Set of Filters
  • Spring Security Config File
  • Securing Java Code
  • Securing Java Spring Beans
  • Exercise: Using Spring Security (Pt 1)
  • Exercise: Using Spring Security (Pt 2)
  • Exercise: Using Spring Security (Pt 3)
  • Exercise: Using Spring Security (Pt 4)

 

Session: Spring JMS

 

Lesson: JMS Overview (Optional)

  • Java Message Service (JMS)
  • The JMS Factory Model
  • JMS Queue Architecture
  • Topic Architecture
  • Messages

 

Lesson: Spring and JMS

  • JmsTemplate
  • Callback Methods
  • Spring Messaging Module
  • Message Converters
  • MessagePostProcessor
  • Destinations
  • Working with @JmsListener
  • Exercise: Using JMS with Spring


Sorry! It looks like we haven’t updated our dates for the class you selected yet. There’s a quick way to find out. Contact us at 502.265.3057 or email info@training4it.com


Request a Date