Welcome to the documentation for the Blog Application built using Spring Boot. This project is designed to provide a comprehensive learning experience covering various aspects of building REST APIs, securing them, implementing CRUD operations, handling exceptions, and more. Below is an overview of the key features and concepts covered in this project.
- Develop REST APIs for a Blog App using Spring Boot, Spring Security, JWT, Spring Data JPA (Hibernate), and MySQL Database.
- Implement CRUD operations for Blog entities.
- Establish REST APIs for handling one-to-many & many-to-many relationships, such as
/posts/{postId}/comments/{commentId}
.
- Implement REST APIs for Pagination and Sorting.
- Build REST APIs for Search and Filtering in the Spring Boot Project.
- Create REST APIs for user authentication, including login and signup functionalities.
- Utilize Spring Security for in-memory and database authentication and authorization.
- Utilize Lombok library for streamlined code.
- Learn the usage of Data Transfer Objects (DTOs).
- Implement Spring Boot REST API Exception Handling and Validation.
- Secure REST APIs with role-based security.
- Configure JSON Web Token (JWT) for enhanced security.
- Integrate JWT with login API and secure REST APIs using JWT.
- Write query methods using Spring Data JPA.
- Explore one-to-many and many-to-many JPA/Hibernate mappings.
- Test REST APIs using Postman REST Client.
- Utilize Swagger UI for REST API documentation.
- Customize Swagger REST documentation with annotations.
- Understand different versioning strategies for REST APIs.
- Deploy the Spring Boot Blog App on AWS Cloud for production.
- Dockerize Spring Boot applications step by step.
- Dockerize Spring Boot MySQL CRUD Application.
- Use Docker Compose for orchestrating Spring Boot MySQL CRUD Application.