O DSList é um projeto desenvolvido no contexto do Intensivão Java Spring, com o objetivo de criar um sistema de listas de jogos usando Java, Spring Boot e tecnologias relacionadas. O backend implementa a lógica de criação, manipulação e persistência dessas listas, utilizando boas práticas de desenvolvimento de software e integração com banco de dados.
Este repositório foi criado para mostrar a implementação de um sistema simples e funcional utilizando Spring Boot, JPA, e PostgreSQL. O projeto também foi desenvolvido para ser facilmente implantado em ambiente de produção, utilizando Railway como plataforma de deployment.

O modelo de domínio acima ilustra as principais entidades do sistema e seus relacionamentos, como jogos, listas e categorias. Essas entidades são manipuladas pelo backend para atender às necessidades do sistema.
- Java 17: Linguagem de programação utilizada.
- Spring Boot: Framework para desenvolvimento de aplicações Java baseadas em Spring.
- JPA / Hibernate**: Implementação de persistência de dados para integrar o banco de dados com o sistema.
- Maven: Ferramenta de automação de compilação e gerenciamento de dependências.
- PostgreSQL**: Banco de dados relacional utilizado para persistir dados do sistema.
- H2: Banco de dados em memória, utilizado em ambientes de desenvolvimento e testes. Docker Compose: Ferramenta para orquestrar containers Docker, facilitando a configuração de ambientes locais.
- Back end: Implantação no Railway, uma plataforma que oferece deploy automático e escalabilidade para aplicações backend.
- Banco de dados: Utilização do PostgreSQL no ambiente de produção para armazenar os dados persistentes.
Para começar a utilizar o projeto localmente, clone o repositório em sua máquina:
git clone https://github.com/henriqueaguiiar/dslist-backend.gitEste projeto utiliza o PostgreSQL para persistir dados, mas você pode rodar a aplicação localmente com o H2 (em memória) para facilitar o desenvolvimento. Caso prefira utilizar o PostgreSQL, basta configurar a string de conexão no arquivo application.properties.
-
Usando Docker Compose:
Se quiser rodar o PostgreSQL via Docker, o repositório já contém o arquivodocker-compose.ymlpara facilitar a configuração.Para levantar o banco de dados no Docker, execute:
docker-compose up
Com o banco de dados configurado, execute o projeto localmente com o Maven:
./mvnw spring-boot:runA aplicação estará disponível em http://localhost:8080.
- Fork este repositório.
- Crie uma branch para a sua feature:
git checkout -b minha-feature
- Faça suas alterações e commit:
git commit -am 'Adiciona minha feature' - Envie suas alterações para o repositório:
git push origin minha-feature
- Abra um Pull Request para discutir e revisar suas alterações.