Duration
4 Days
24 CPD hours
This course is intended for
Application developers who want to increase their understanding of Spring and
Spring Boot with hands-on experience and a focus on fundamentals
Overview
By the end of the course, you should be able to meet the following objectives:
Spring configuration using Java Configuration and Annotations
Aspect oriented programming with Spring
Testing Spring applications using JUnit 5
Spring Data Access - JDBC, JPA and Spring Data
Spring Transaction Management
Simplifying application development with Spring Boot
Spring Boot auto-configuration, starters and properties
Build a simple REST application using Spring Boot, embedded Web Server and fat
JARs or classic WARs
Implementing REST client applications using RestTemplate and WebClient
Spring Security
Enable and extend metrics and monitoring capabilities using Spring Boot actuator
Utilize Spring Boot enhancements to testing
This course offers hands-on experience with the major features of Spring and
Spring Boot, which includes configuration, data access, REST, AOP,
auto-configuration, actuator, security, and Spring testing framework to build
enterprise and microservices applications. On completion, participants will have
a foundation for creating enterprise and cloud-ready applications.
INTRODUCTION TO SPRING
* Java configuration and the Spring application
context
@Configuration and @Bean annotations
@Import: working with multiple configuration files
Defining bean scopes
Launching a Spring Application and obtaining Beans
SPRING JAVA CONFIGURATION: A DEEPER LOOK
* External properties & Property sources
* Environment abstraction
* Using bean profiles
* Spring Expression Language (SpEL)
ANNOTATION-BASED DEPENDENCY INJECTION
* Component scanning
* Autowiring using @Autowired
* Java configuration versus annotations, mixing.
* Lifecycle annotations: @PostConstruct and
* @PreDestroy
* Stereotypes and meta-annotations
FACTORY PATTERN IN SPRING
* Using Spring FactoryBeans
ADVANCED SPRING: HOW DOES SPRING WORK INTERNALLY?
* The Spring Bean Lifecycle
* The BeanFactoryPostProcessor interception point
* The BeanPostProcessor interception point
* Spring Bean Proxies
* @Bean method return types
ASPECT-ORIENTED PROGRAMMING
* What problems does AOP solve?
* Defining pointcut expressions
* Implementing various types of advice
TESTING A SPRING-BASED APPLICATION
* Spring and Test-Driven Development
* Spring 5 integration testing with JUnit 5
* Application context caching and the @Dirties Context annotation
* Profile selection with @Active Profiles
* Easy test data setup with @Sql
DATA ACCSS AND JDBC WITH SPRING
* How Spring integrates with existing data access technologies
* Data Access Exception hierarchy
* Spring?s Jdbc Template
DATABASE TRANSACTIONS WITH SPRING
* Transactions overview
* Transaction management with Spring
* Transaction propagation and rollback rules
* Transactions and integration testing
SPRING BOOT INTRODUCTION
* Introduction to Spring Boot Features
* Value Proposition of Spring Boot
* Creating a simple Boot application using Spring
* Initializer website
SPRING BOOT DEPENDENCIES, AUTO-CONFIGURATION, AND RUNTIME
* Dependency management using Spring Boot starters
* How auto-configuration works
* Configuration properties
* Overriding auto-configuration
* Using Command Line Runner
JPA WITH SPRING AND SPRING DATA
* Quick introduction to ORM with JPA
* Benefits of using Spring with JPA
* JPA configuration in Spring
* Configuring Spring JPA using Spring Boot
* Spring Data JPA dynamic repositories
SPRING MVC ARCHITECTURE AND OVERVIEW
* Introduction to Spring MVC and request processing
* Controller method signatures
* Using @Controller, @RestController and
* @GetMapping annotations
* Configuring Spring MVC with Spring Boot
* Spring Boot packaging options, JAR or WAR
REST WITH SPRING MVC
* An introduction to the REST architectural style
* Controlling HTTP response codes with @ResponseStatus
* Implementing REST with Spring MVC,
* @RequestMapping, @RequestBody and
* @ResponseBody
* Spring MVC?s HttpMessageConverters and
* automatic content negotiation
SPRING SECURITY
* What problems does Spring Security solve?
* Configuring authentication
* Implementing authorization by intercepting URLs
* Authorization at the Java method level
* Understanding the Spring Security filter chain
* Spring security testing
ACTUATORS, METRICS AND HEALTH INDICATORS
* Exposing Spring Boot Actuator endpoints
* Custom Metrics
* Health Indicators
* Creating custom Health Indicators
* External monitoring systems
SPRING BOOT TESTING ENHANCEMENTS
* Spring Boot testing overview
* Integration testing using @SpringBootTest
* Web slice testing with MockMvc framework
* Slices to test different layers of the application
SPRING SECURITY OAUTH (OPTIONAL TOPIC)
* OAuth 2 Overview
* Implementing OAuth 2 using Spring Security OAuth
REACTIVE APPLICATIONS WITH SPRING (OPTIONAL TOPIC)
* Overview of Reactive Programming concepts
* Reactive Programming support in Spring
* Using Spring?s reactive WebClient
ADDITIONAL COURSE DETAILS:
Notes
Delivery by TDSynex, Exit Certified and New Horizons an VMware Authorised
Training Centre (VATC)
Nexus Humans VMware Spring: Core Training training program is a workshop that
presents an invigorating mix of sessions, lessons, and masterclasses
meticulously crafted to propel your learning expedition forward.
This immersive bootcamp-style experience boasts interactive lectures, hands-on
labs, and collaborative hackathons, all strategically designed to fortify
fundamental concepts.
Guided by seasoned coaches, each session offers priceless insights and practical
skills crucial for honing your expertise. Whether you're stepping into the realm
of professional skills or a seasoned professional, this comprehensive course
ensures you're equipped with the knowledge and prowess necessary for success.
While we feel this is the best course for the VMware Spring: Core Training
course and one of our Top 10 we encourage you to read the course outline to make
sure it is the right content for you.
Additionally, private sessions, closed classes or dedicated events are available
both live online and at our training centres in Dublin and London, as well as at
your offices anywhere in the UK, Ireland or across EMEA.