- Java 19
- Spring Boot 3.0.6
- Gradle
- Lombok
- JUnit 5
- spotless
- Flyway
O projeto conta com um Swagger, então a documentação das respostas e requests estão lá. http://localhost:8080/swagger-ui/index.html
- Você deve ter instalado em sua maquina o docker compose.
- Caso você tenha um mysql server instalado em sua maquina você deve parar o serviço pois ele ira conflitar com as portas do container do mysq.
Na raiz do projeto você deve executar docker-compose up
. Assim que estiver de pé o projeto ele estara disponivel no endereço http://localhost:8080/swagger-ui/index.html
- Caso queira executar o projeto por algum editor você deve ter um banco de dados Mysql para o qual apontar.
- O projeto esta com as seguintes configurações padrões:
host: jdbc:mysql://127.0.0.1:3306/notification?createDatabaseIfNotExist=true
user: root
pass: password
É possivel sobreescrever essas configurações alterando direto no arquivo application.yaml
ou setando as variaveis de ambiente:
DB_NAME = O host do banco
DB_USER = user do banco
DB_PASS = senha do banco
O projeto esta configurado para sempre que iniciar executar as Migrations, ou seja, sempra que o projeto for executado ele ira executar os scripts dentro de src/main/resources/db/migration/.
Esses scripts precisam estar no padrão "versão"+"__"+"titulo" exemplo V002__add_table_address.sql
O banco escolhido foi o MySQL, devido a versão do Spring o banco deve ser posterior a versão 8.0.0