Spring Boot 123
A technical blog covering Spring Boot from the basics to implementation, operations, and design — in plain English.
Latest Articles
-
How to Use JUnit 5 with Spring Boot - @DisplayName, @ParameterizedTest, @Nested Basics and Differences from JUnit 4
-
What is spring-boot-starter-web? Its dependencies, how to add it with Maven/Gradle, and the rename to spring-boot-starter-webmvc
-
What Is @SpringBootApplication in Spring Boot? Understanding It by Breaking It Down into 3 Annotations
-
How to Control Validation Execution Order with @GroupSequence in Spring Boot - Redefining the Default Group and @GroupSequenceProvider
-
How to Control Cache Keys with @Cacheable in Spring Boot - Choosing Between SpEL in the key Attribute, KeyGenerator, condition/unless, and @Caching
-
How to Implement Chunk Processing Using MyBatisCursorItemReader and MyBatisBatchItemWriter with Spring Batch + MyBatis
Browse by Topic
Follow a structured path and read articles in order.
Start Here
The quickest path to understanding Spring Boot's big picture and fundamentals.
Spring Core Concepts
Build a solid foundation in DI, Beans, and other concepts that directly inform design decisions.
- What is DI (Dependency Injection) in Spring Boot? Explaining the Mechanism, Syntax, and Benefits [For Beginners]
- What Is @Component in Spring Boot? Differences from @Bean and How to Use It
- What is @Configuration / @Bean in Spring Boot? Explaining the Difference from @Component and How to Use Them
- What is Spring AOP? Explaining the Mechanism and Usage with Sample Code
Web / API Development
Learn REST API design, exception handling, authentication, and input validation all in one place.
- How to Implement Pagination in Spring Boot REST API - Using Pageable and Page
- How to Return Unified Error Responses in Spring Boot REST APIs - Using @ControllerAdvice and @ExceptionHandler (with @RestControllerAdvice / ResponseEntityExceptionHandler)
- How to Implement Validation Simply with the Spring Boot @Valid Annotation - Usage and Error Handling
- Getting Started with Authentication in Spring Boot using Spring Security - From Basic Authentication to Form Authentication
Data Access & Operations
Connect the dots from JPA and transactions to configuration management and monitoring.
- Introduction to JPA Association Mapping in Spring Boot - How to Use @OneToMany/@ManyToOne/@ManyToMany and mappedBy
- Have you ever struggled with how to write Spring Data JPA query methods?
- Understanding Transaction Management with @Transactional in Spring Boot - Choosing Propagation and Isolation Levels
- Managing Configuration in Spring Boot with application.properties/yml - Choosing Between @Value and @ConfigurationProperties
Browse by Tag
Explore related topics across articles.
View all tagsMore Articles
-
How to Test File Upload APIs Using MockMvc in Spring Boot - Testing Error Cases for Size Limits and MIME Validation with MockMultipartFile
-
How to Unit Test Mappers in Spring Boot + MyBatis - Why @MybatisTest Doesn't Exist and Alternative Configurations with H2/Testcontainers
-
How to Test File Download APIs with MockMvc in Spring Boot - Verifying Content-Disposition and Binary Responses
-
How to Implement a Second-Level Cache with @CacheNamespace in Spring Boot + MyBatis - cache Tag and Redis Integration
-
How to Load Test Data in Spring Boot Tests Using the @Sql Annotation
-
How to Use @NamedEntityGraph in Spring Data JPA - Reusable Fetch Definitions and Choosing Between EntityGraph.Type
-
HikariCP Pool Sizing for Multiple DataSources in Spring Boot
-
How to Resolve Multiple Beans of the Same Type in Spring Boot - Using @Qualifier and @Primary and Name Resolution Priority
-
How to Test @RestControllerAdvice Exception Handlers Using MockMvc in Spring Boot - Verifying Status Codes and ProblemDetail
-
Spring Boot + MyBatis Polymorphic Mapping with discriminator - resultMap Implementation to Branch a Single Table by Type
-
How to Implement Optimistic Locking in Spring Boot + MyBatis
-
When Should You Use BeanNameAware and ApplicationContextAware in Spring Boot?