https://github.com/dariocm/bookmarksii
bookmarks springboot example
https://github.com/dariocm/bookmarksii
docker-compose ehcache flyway jpa posrtgres spring-boot testcontainers validation
Last synced: 11 months ago
JSON representation
bookmarks springboot example
- Host: GitHub
- URL: https://github.com/dariocm/bookmarksii
- Owner: DarioCM
- Created: 2024-10-12T08:22:56.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-10-18T07:26:34.000Z (over 1 year ago)
- Last Synced: 2025-01-31T06:47:55.454Z (about 1 year ago)
- Topics: docker-compose, ehcache, flyway, jpa, posrtgres, spring-boot, testcontainers, validation
- Language: Java
- Homepage:
- Size: 28.3 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Getting Started
### Reference Documentation
For further reference, please consider the following sections:
* [Official Apache Maven documentation](https://maven.apache.org/guides/index.html)
* [Spring Boot Maven Plugin Reference Guide](https://docs.spring.io/spring-boot/3.3.4/maven-plugin)
* [Create an OCI image](https://docs.spring.io/spring-boot/3.3.4/maven-plugin/build-image.html)
* [Spring Boot Testcontainers support](https://docs.spring.io/spring-boot/3.3.4/reference/testing/testcontainers.html#testing.testcontainers)
* [Testcontainers Postgres Module Reference Guide](https://java.testcontainers.org/modules/databases/postgres/)
* [Spring Data JPA](https://docs.spring.io/spring-boot/docs/3.3.4/reference/htmlsingle/index.html#data.sql.jpa-and-spring-data)
* [Docker Compose Support](https://docs.spring.io/spring-boot/docs/3.3.4/reference/htmlsingle/index.html#features.docker-compose)
* [Flyway Migration](https://docs.spring.io/spring-boot/docs/3.3.4/reference/htmlsingle/index.html#howto.data-initialization.migration-tool.flyway)
* [Testcontainers](https://java.testcontainers.org/)
* [Validation](https://docs.spring.io/spring-boot/docs/3.3.4/reference/htmlsingle/index.html#io.validation)
* [Spring Web](https://docs.spring.io/spring-boot/docs/3.3.4/reference/htmlsingle/index.html#web)
### Guides
The following guides illustrate how to use some features concretely:
* [Accessing Data with JPA](https://spring.io/guides/gs/accessing-data-jpa/)
* [Validation](https://spring.io/guides/gs/validating-form-input/)
* [Building a RESTful Web Service](https://spring.io/guides/gs/rest-service/)
* [Serving Web Content with Spring MVC](https://spring.io/guides/gs/serving-web-content/)
* [Building REST services with Spring](https://spring.io/guides/tutorials/rest/)
### Docker Compose support
This project contains a Docker Compose file named `compose.yaml`.
In this file, the following services have been defined:
* postgres: [`postgres:latest`](https://hub.docker.com/_/postgres)
Please review the tags of the used images and set them to the same as you're running in production.
### Testcontainers support
This project
uses [Testcontainers at development time](https://docs.spring.io/spring-boot/3.3.4/reference/features/dev-services.html#features.dev-services.testcontainers).
Testcontainers has been configured to use the following Docker images:
* [`postgres:latest`](https://hub.docker.com/_/postgres)
Please review the tags of the used images and set them to the same as you're running in production.
### Maven Parent overrides
Due to Maven's design, elements are inherited from the parent POM to the project POM.
While most of the inheritance is fine, it also inherits unwanted elements like `` and `` from the
parent.
To prevent this, the project POM contains empty overrides for these elements.
If you manually switch to a different parent and actually want the inheritance, you need to remove those overrides.
### Resources
https://www.youtube.com/live/VvWtoaeHQUQ
### Add Caching
https://medium.com/@vino7tech/mastering-caching-in-spring-boot-techniques-and-best-practices-f82316196c12