Spring Boot
Roadmap
2024
LAHIRU
LIYANAPATHIRANA
PAGE 2/14
What Is Spring & Spring Boot?
Spring Framework is an open-source
Java framework that simplifies
enterprise application development
through Dependency Injection and
Inversion of Control.
Spring Boot is build on top of Spring
and it simplifies the development of
Spring applications by providing auto-
configuration and a set of pre-built
libraries.
LAHIRU
LIYANAPATHIRANA
PAGE 3/14
Why Spring?
Dependency Injection: Simplifies
code, boosts testability
Modularity: Vast ecosystem of
pick-and-choose libraries
Integration: Seamless compatibility
with Java ecosystem
Scalability: From simple APIs to
enterprise applications, with ease
Productivity: Rapid development
LAHIRU
LIYANAPATHIRANA
PAGE 4/14
Pre-Requisites
OOP Concepts
Java Fundamentals
Build Tool (Maven/Gradle)
LAHIRU
LIYANAPATHIRANA
PAGE 5/14
Core Concepts
Dependency Injection
Inversion of Control (IoC)
IoC Container
Application Context
Beans and bean scopes
Configuration
XML based configuration
Annotation based configuration
@ComponentScan
@Autowire and @Component
LAHIRU
LIYANAPATHIRANA
PAGE 6/14
Spring Boot
Spring Initializr
Auto-Configuration
Spring boot starters
Embedded Servers
Actuator
Property configuration
Profiles (environment specific config)
LAHIRU
LIYANAPATHIRANA
PAGE 7/14
Spring MVC
MVC architecture
Dispatcher servlet
Path variables & request parameters
@Controller
@RequestMapping annotations
Data binding and validation
View technologies (JSP, Thymeleaf)
Filters and interceptors
LAHIRU
LIYANAPATHIRANA
PAGE 8/14
RESTful Services
REST principles
REST API design
HTTP methods (GET, POST, PUT, DELETE)
@RestController
Request and response marshalling
Content type negotiation
HATEOAS
Swagger/OpenAPI documentation
@ExceptionHandler @ControllerAdvice
LAHIRU
LIYANAPATHIRANA
PAGE 9/14
Database Access
JDBC
Java Persistence API (JPA)
Hibernate and other ORMs
Entity mappings with annotations
Repositories and CRUD operations
Custom queries (SQL, HQL, JPQL)
Transactional management
Connection Pooling (HikariCP)
Caching
LAHIRU
LIYANAPATHIRANA
PAGE 10/14
Spring Security
Authentication
Authorization
Security context
Security filter chain
Hashing and password encoding
Method-level security
JSON Web Token (JWT)
OAuth2
OpenID connect
CSRF and CORS
LAHIRU
LIYANAPATHIRANA
PAGE 11/14
Spring AOP
Cross-Cutting Concerns
Aspect
Advice and advice types
Pointcut expressions
AOP Proxies
Testing
Junit5
Mocking with Mockito and Powermock
Spring test framework
LAHIRU
LIYANAPATHIRANA
PAGE 12/14
Microservices (Spring Cloud)
Microservices architecture
Spring cloud
Service discovery
API gateway and load balancing
Resiliency Patterns
Distributed configuration and tracing
Distributed transactions
Service mesh
Event driven architecture
LAHIRU
LIYANAPATHIRANA
PAGE 13/14
Other Topics
Reactive programming (Webflux)
Spring Batch
Spring messaging (Kafka, RabbitMQ)
Spring Integration
LAHIRU
LIYANAPATHIRANA
PAGE 14/14
How Can You Improve?
Understand the fundamentals
Refer books and online resources
Build projects with Spring
Practice, practice, practice
LAHIRU
LIYANAPATHIRANA
PAGE 7/7
Did You Find This
Post Useful?
Stay Tuned for More
Spring Related Posts
Like This
LAHIRU
LIYANAPATHIRANA