Spring Certification
Spring Certification
Spring Professional Certification — Study Guide
About the Book
This hands-on theory guide prepares you for the Spring Professional Certification by explaining every exam objective clearly and practically. Each section turns dense specs into plain language with diagrams, annotated code, and “gotcha” notes—all mapped to the official outline so you can study efficiently.
What you’ll learn
- Spring Core: configuration styles, component scanning, bean lifecycle, AOP
- Data: JDBC, transaction demystified, Spring Data with Spring Boot
- Web: building RESTful services with Spring MVC
- Testing: unit, slice, integration, MockMvc concepts and when to use them
- Security: authentication/authorization flows, method security
- Spring Boot: auto-configuration, properties & profiles, actuator
What’s inside
- Objective-by-objective theory with concise explanations
- Production-minded code snippets and architecture diagrams
- Tip callouts for common pitfalls and exam traps
- Quick-reference tables and end-of-chapter summaries
- Links to companion resources for deeper study
Who this book is for
Java developers who want a rigorous, no-fluff theory-first path to the Spring Professional exam—and stronger real-world Spring understanding.
Living book
Leanpub readers receive free updates as the Spring ecosystem evolves.
Disclaimer: This book is an independent resource and is not affiliated with or endorsed by VMware or the Spring Team
Table of Contents
- Objective 1.1 — Introduction to the Spring Framework
- What is the Spring Framework?
- The Dependency Injection (DI) Container
- Spring Framework History (high-level)
- What Spring is used for (quick map)
- Core exam takeaways
- Mini-glossary (ESL friendly)
- Objective 1.2 — Java Configuration
- Quick Start
- The ApplicationContext
- Handling Multiple Configurations
- Bean Scope
- Spring Expression Language (SpEL)
- Using the context in tests (system test style)
- Conclusion (why Java configuration matters)
- Objective 1.3 — Properties and Profiles
- Use External Properties
- Spring Profiles
- Spring Expression Language (SpEL)
- Recap
- Objective 1.4 — Annotation-Based Configuration and Component Scanning
- Annotation-Based Configuration
- Using
@Autowired
- Autowiring and Disambiguation
- Using
@Valuefor simple values
- Lazy Initialization
- Component Scanning Best Practices
- Configuration Choices
- Stereotype and Meta-Annotations
- Lifecycle hooks
- Summary
- Objective 1.5 — Spring Bean Lifecycle
- Initialization Phase — Part 1
- Use Phase
- Destruction Phase
- Bean Creation Order and Injection Issues
- Summary
- Objective 1.6 — Aspect-Oriented Programming (AOP)
- What Problems Does AOP Solve?
- Core AOP Concepts and Quick Start
- Defining Pointcut Expressions (AspectJ syntax)
- Advice Types
- Limitations of Spring AOP
- Summary
- Objective 2.1 — Introduction to Spring JDBC
- Problems with Traditional JDBC
- Into
JdbcTemplate
- Creating a
JdbcTemplate
- JdbcTemplate Basic Usage
- Working with ResultSets Using Callbacks
- Exception Handling
- Putting it together: a clean repository
- Exam Tips & Gotchas
- Objective 2.2 — Transaction Management with Spring
- Why Transactions (and Java Support)
- Spring Transaction Management
- Configure Transaction Propagation
- Setup Rollback Rules and Testing Support
- Programmatic Transactions (for completeness)
- Summary
- Objective 2.3 — Spring Boot and Spring Data for Backing Stores
- Spring Boot & Spring Data JPA
- 1 Spring Boot “Starter” Dependencies
- 2 Spring Boot and JPA
- 3 Spring Data — Instant Repositories
- 4 Packaging & Integration Testing (Data)
- Summary
- Objective 3.1 — Web Applications with Spring Boot
- Spring Web Introduction
- Web Layer Support in Spring MVC and Spring Boot
- Spring MVC Quick Start (REST)
- Message Converters
- Configure for WAR or JAR Deployment
- Spring MVC Quick Start — Putting It Together
- Summary
- Objective 3.2 — REST Applications
- RESTful applications with Spring Boot
- REST in a nutshell
- Implementing HTTP GET and PUT
- Implementing HTTP POST and DELETE
- Client calls with
RestTemplate
- Summary
- Objective 4.1 — Testing Spring Applications
- Packaging and Integration Testing
- Testing with Spring Boot
- Configure Tests with Profiles & Databases
- Using the Web Layer in Tests
- Summary
- Objective 4.2 — Advanced Testing with Spring Boot and MockMVC
- Spring Boot Testing
- Spring Boot testing framework
- Perform MockMVC testing
- Perform slice testing
- Summary
- Objective 5.1 — Explain Basic Security Concepts
- Core Concepts
- Spring Security — The Big Picture
- Spring Security Filter Chain
- SecurityContextPersistenceFilter (request lifecycle)
- Threats & Principles (High Level)
- Objective 5.2 — Use Spring Security for Authentication & Authorization
- URL Authorization
- Configuring Web Authentication
- Securing REST Applications (Stateless)
- Objective 5.3 — Define Method-Level Security
- Method Security Annotations
- Why Method Security?
- Enabling Method Security (Spring Security 6+)
- How It Works (AOP Proxy)
- Common Annotations & When to Use Them
- SpEL Cheatsheet for
@PreAuthorize/@PostAuthorize
- Fine-Grained Filtering
- Testing Method Security
- Practical Patterns
- Quick Reference
- Minimal Working Setup
- Objective 6.1 — Spring Boot Feature Introduction
- Spring Boot Feature Introduction
- Spring Boot Getting Started
- Packaging and Integration Testing
- Spring Boot feature introduction
- 1 Objectives
- 2 What is Spring Boot?
- 3 Why Spring Boot?
- 4 How do you manage dependencies?
- 5 Spring Boot parent POM
- 6 Spring Boot “starter” dependencies
- 7 Test “starter” dependency
- 8 Many starters are available
- 9 Auto-configuration enabled by
@EnableAutoConfiguration
- 10 Shortcut:
@SpringBootApplication
- 11 Example of Auto-configuration (DataSource, JdbcTemplate)
- Packaging and integration testing
- 1 Fat JAR with the Spring Boot plugin
- 2 Spring Boot Maven plugin
- 3 Packaging result
- 4 Test:
@SpringBootTest
- 5
@SpringBootConfigurationdiscovery
- Spring Boot getting started
- 1 Hello World — three files
- Objective 6.2 — Spring Boot Properties and Autoconfiguration
- Using Auto-Configuration
- Override Default Configuration
- Externalized Configuration in Boot
- Spring Boot — A Closer Look
- 1 Objectives
- 2 Externalized properties:
application.properties
- 3 Where Spring Boot looks for
application.properties
- 4 Profiles and
application.properties
- 5 YAML support
- 6 Profiles with YAML
- 7 Property precedence (simplified)
- 8 The problem with repeating placeholders
- 9 Use
@ConfigurationProperties
- 10 Enabling
@ConfigurationProperties
- 11 Relaxed binding
- Using Auto-Configuration
- 12 Enabling auto-configuration
- 13 How auto-configuration works
- 14 Auto-config examples: DataSource, JdbcTemplate
- 15 Conditional annotations
- 16 What are auto-configuration classes?
- 17 Where are they listed?
- Override Default Configuration
- 18 Four common override strategies
- 19 (1) Set Boot properties
- 20 (2) Define explicit beans
- 21 (3) Exclude auto-configuration
- 22 (4a) Override dependency versions
- 23 (4b) Substitute dependencies
- 24 DataSource customization highlights
- 25 CommandLineRunner & ApplicationRunner
- 26 Summary
- Objective 6.3 — Spring Boot Actuator
- Actuators, Metrics, and Health Indicators
- Setting Up Actuators
- Metrics
- Health Indicators
- Actuators, Metrics, and Health Indicators
- 1) What value does Actuator provide?
- 2) Key endpoints
- 3) Setting up Actuators
- 4) Securing endpoints
- Metrics
- Creating custom metrics
- Health Indicators
- Prometheus & Datadog quick setup
- Handy properties cheat sheet
- Final tips
- Practice Tests — Spring Professional (6 Full Exams)
- What you’ll get
- Who it’s for
- Scan to visit
- Objective 1.1 — Introduction to the Spring Framework
The Leanpub 60 Day 100% Happiness Guarantee
Within 60 days of purchase you can get a 100% refund on any Leanpub purchase, in two clicks.
Now, this is technically risky for us, since you'll have the book or course files either way. But we're so confident in our products and services, and in our authors and readers, that we're happy to offer a full money back guarantee for everything we sell.
You can only find out how good something is by trying it, and because of our 100% money back guarantee there's literally no risk to do so!
So, there's no reason not to click the Add to Cart button, is there?
See full terms...
Earn $8 on a $10 Purchase, and $16 on a $20 Purchase
We pay 80% royalties on purchases of $7.99 or more, and 80% royalties minus a 50 cent flat fee on purchases between $0.99 and $7.98. You earn $8 on a $10 sale, and $16 on a $20 sale. So, if we sell 5000 non-refunded copies of your book for $20, you'll earn $80,000.
(Yes, some authors have already earned much more than that on Leanpub.)
In fact, authors have earnedover $14 millionwriting, publishing and selling on Leanpub.
Learn more about writing on Leanpub
Free Updates. DRM Free.
If you buy a Leanpub book, you get free updates for as long as the author updates the book! Many authors use Leanpub to publish their books in-progress, while they are writing them. All readers get free updates, regardless of when they bought the book or how much they paid (including free).
Most Leanpub books are available in PDF (for computers) and EPUB (for phones, tablets and Kindle). The formats that a book includes are shown at the top right corner of this page.
Finally, Leanpub books don't have any DRM copy-protection nonsense, so you can easily read them on any supported device.
Learn more about Leanpub's ebook formats and where to read them