This project aims to provide a practical understanding of the main differences between the document-oriented and relational paradigms, as well as to allow the implementation of basic CRUD (Create, Read, Update, Delete) operations. It also aims to reflect on design decisions for a document-oriented database and the implementation of associations between objects, including nested objects and references.
- Understand the fundamental differences between document-oriented and relational databases.
- Implement CRUD operations using Spring Boot and MongoDB.
- Reflect on design decisions for data modeling in a document-oriented database.
- Implement associations between objects using MongoDB: nested objects, references.
- Perform queries using Spring Data and MongoRepository to interact with MongoDB efficiently.
- Spring Boot
- MongoDB
- Spring Data MongoDB
The project is structured as follows:
/config: Contains configuration files for the application./domain: Contains domain models and entity classes./dto: Contains data transfer objects (DTOs)./repository: Contains repository interfaces for interacting with MongoDB./resources: Contains application resources, such as configuration files./services: Contains service classes for business logic implementation.
- Java 8 or higher installed.
- MongoDB installed and running locally or accessible remotely.
- IDE of your choice (recommended: IntelliJ IDEA, Eclipse, etc.).
- Maven or Gradle installed for dependency management (recommended: Maven).
Contributions are welcome! Feel free to send pull requests, report issues, or suggest improvements.
This project is licensed under the MIT License.