Spring and Spring Boot in 2 Weeks
Published by O'Reilly Media, Inc.
Enhance Your Enterprise Java Skills for More Powerful Server-side Systems
Course Outcomes:
- How to create a new server-side Java application using Spring Boot
- The benefits of dependency injection and POJO-based services
- How to test applications with the Spring TestContext Framework
- How to integrate relational databases into your application with transactional support
Are you an enterprise Java developer looking to enhance your productivity without sacrificing application performance and flexibility? Supercharge your Java skills with Spring and Spring Boot to transform your development capabilities and elevate your enterprise programming.
Join developer, trainer, and consultant Ken Kousen for this hands-on course that will help you quickly ramp up your Spring and Spring Boot development proficiency. Through carefully crafted exercises, real-world examples, and a test-first approach, you'll gain the foundational knowledge and practical expertise needed to build more efficient, maintainable, and scalable enterprise applications. You will build RESTful applications with validation, persistence, and external integrations, while learning to use Spring Boot’s core features and production-ready tools. Whether you're looking to modernize existing applications or create new ones, this course provides the essential knowledge you need to excel in modern Java development.
What you’ll learn and how you can apply it
- Access relational data with JDBC, JPA, and Spring Data
- Use Spring-managed transactions to wrap business logic
- Create and execute unit, integration, and functional tests
- Deploy executable jars containing RESTful web services
This live event is for you because...
- You’re an experienced Java developer who wants to jump straight into the latest Spring Boot 3 features, like the new RestClient and JdbcClient.
- You’re a software engineer looking to modernize your stack using Java 17 or 21 and want to see how Spring Boot leverages modern Java features like Records and Sealed Classes.
- You’re a team member or leader who needs to build, test, and deploy production-ready RESTful services quickly without getting bogged down in legacy XML configuration.
- You’re a developer who values a test-first approach and wants to master MockMvc, @DataJpaTest, and integration testing to ensure code quality.
- You’re curious about how Spring Boot’s auto-configuration works under the hood and want to learn how to customize it for real-world enterprise needs.
- You’re responsible for application health and want to learn how to use Spring Boot Actuator to monitor and manage services in a cloud or containerized environment.
- You’re looking for a streamlined, hands-on deep dive that cuts through the fluff and focuses on the essential tools needed for modern server-side development.
Prerequisites
- Working knowledge of Java
- Some familiarity with web applications and RESTful services Note: Courseware will be accessible online, and all code samples will be made available in a public GitHub repository.
- Setup information will be provided before the course, but the preferred setup will use Java 17 or above Standard Edition, the Gradle Build Tool (a wrapper will be included in the courseware), and an IDE that understands Java.
Schedule
The time frames are only estimates and may vary according to how the class is progressing.
Day 1 (4 hours)
Installing Spring Boot (15 min)
- Course overview and objectives
- Installing and configuring Spring Boot
- Using the Initializr
- Auto-configuration and @SpringBootApplication
Core Spring Concepts (30 min)
- Dependency Injection and Inversion of Control
- Annotations and component scanning
- Java configuration classes
Exercise (30 min): Build and run a minimal Spring Boot application with DI
Testing in Spring Boot (45 min)
- Philosophy: everything should be tested
- JUnit and AssertJ refresher
- Spring Boot test support: @SpringBootTest, test slices
- MockMvc for REST endpoints
Exercise (30 min): Write both unit and integration tests for the starter app
REST Services (60 min)
- Controllers: @RestController, mappings, request bodies
- JSON serialization with Jackson
- Error handling with ResponseEntity
Exercise (30 min): Build and test a REST API with GET/POST endpoints
Validation & Controller Advice (30 min)
- Bean Validation: @Valid, @NotNull, @Size, etc.
- Default error responses
- Customizing errors with @ControllerAdvice and @ExceptionHandler
Exercise(15 min): Add validation and controller advice for custom error JSON
Day 2 (4 hours)
Review & Q/A (15 min)
Persistence with JdbcClient and Spring Data JPA (60 min)
- Direct SQL access with JdbcClient
- Entities and repositories (CrudRepository, JpaRepository)
- Derived queries
- Testing persistence with H2
Exercise (30 min)
- Use JdbcClient to query/insert directly
- Extend REST API with JPA repository support
REST Clients (60 min)
- The modern RestClient API
- Declarative clients with @HttpExchange
- Error handling strategies
Exercise (30 min): Call a public API (e.g. JSONPlaceholder) and consume results in your app
Configuration & Boot Features (60 min)
- Properties vs YAML
- Profiles and environment-specific configuration
- Externalized configuration and logging basics
- Spring Boot Actuator (health, metrics)
Exercise (30 min): Add multiple profiles, test switching configs, explore Actuator endpoints
Wrap-Up & Next Steps (45 min)
- Packaging and running executable JARs
- Where to go next: Security, reactive programming, messaging
- Additional resources
- Final Q/A
Your Instructor
Ken Kousen
Ken Kousen is the author of the Kotlin Cookbook (O'Reilly), Modern Java Recipes (O'Reilly), Gradle Recipes for Android (O’Reilly), and Making Java Groovy (Manning), as well as O’Reilly video courses in Android, Groovy, Gradle, advanced Java, and Spring. A JavaOne Rock Star, he’s a regular speaker on the No Fluff Just Stuff conference tour and has spoken at conferences all over the world. Through his company, Kousen I.T., Inc., he’s taught software development training courses to thousands of students.
Skills covered
- Spring
- QA / Testing
- ASP.NET Core
- RESTful API