Spring Boot 123
A technical blog covering Spring Boot from the basics to implementation, operations, and design — in plain English.
Latest Articles
-
How to Tune Embedded Tomcat Thread Count in Spring Boot - Deciding server.tomcat.threads.max, max-connections, and accept-count
-
How to Connect Spring Boot to MySQL - application.yml Configuration, JDBC URL Parameters, and Time Zone/Character Encoding Pitfalls
-
How to Implement Pagination with Spring Boot + MyBatis - Choosing Between PageHelper, RowBounds, and Hand-Written LIMIT/OFFSET
-
Mastering Mockito in Spring Boot Service Layer Tests - when, verify, ArgumentCaptor, and doThrow in Practice
-
How to Validate List<DTO>, @RequestParam, and @PathVariable in Spring Boot - Why @Valid Doesn't Work and How to Handle the 3 Exceptions
-
Spring Boot Validation Annotations Cheat Sheet - From the Differences Between @NotNull/@NotEmpty/@NotBlank to Custom Messages
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? How It Works, How to Write It, and Its Benefits [Beginner's Guide]
- What Is @Component in Spring Boot? Differences from @Bean and How to Use It
- What Are @Configuration and @Bean in Spring Boot? Differences from @Component and How to Use Them
- What Is Spring AOP? How It Works and How to Use It, 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 Auth to Form Login
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
- Spring Data JPA Query Methods: A Complete Naming Convention Cheat Sheet
- Understanding Transaction Management with @Transactional in Spring Boot - Choosing the Right Propagation and Isolation Levels
- Managing Configuration with application.properties/yml in Spring Boot - When to Use @Value vs @ConfigurationProperties
Browse by Tag
Explore related topics across articles.
View all tagsMore Articles
-
Which Spring Boot Authentication Method Should You Choose? Comparing Session, JWT, OAuth2, and API Key with a Selection Flowchart
-
Spring Boot Test Annotations Cheat Sheet - How to Choose Between @SpringBootTest, @WebMvcTest, and @DataJpaTest
-
Why @Transactional, @Cacheable, and @Async Don't Work in Spring Boot - Understanding AOP Proxies and Self-Invocation to Fix It
-
How to Use the @Query Annotation in Spring Boot + Spring Data JPA - From JPQL and Native SQL to Update Queries with @Modifying
-
How to Implement Session Management with Spring Session + Redis in Spring Boot - Sharing Sessions Across Multiple Instances
-
Differences Between @Service, @Repository, and @Controller in Spring Boot and How to Use Them - From Their Relationship with @Component to Exception Translation
-
How to Use Quartz Scheduler in Spring Boot - Persistent Jobs, Cron, and Dynamic Scheduling (When to Use It vs. @Scheduled)
-
How to Speed Up Bulk INSERTs with Spring Data JPA - hibernate.jdbc.batch_size and Batching saveAll
-
Implementing Database Authentication with Spring Security - Persisting Users with UserDetailsService and JdbcUserDetailsManager
-
How to Use MyBatis with Spring Boot - An Implementation Guide to Mapper Definitions, Dynamic SQL, and Result Mapping
-
How to Persist enums to a Database with Spring Boot + JPA - Choosing Between @Enumerated(EnumType.STRING) and AttributeConverter
-
How to Implement gRPC Services and Clients in Spring Boot - Protocol Buffers and grpc-spring-boot Support