https://github.com/uellersonac/dining-review
API baseada em Java e Spring Framework de um sistema de avaliação de restaurantes, no qual usuários são capazes de classificar restaurantes que visitam
https://github.com/uellersonac/dining-review
java spring-boot spring-jpa spring-web
Last synced: about 1 month ago
JSON representation
API baseada em Java e Spring Framework de um sistema de avaliação de restaurantes, no qual usuários são capazes de classificar restaurantes que visitam
- Host: GitHub
- URL: https://github.com/uellersonac/dining-review
- Owner: uellersonac
- Created: 2024-11-18T12:06:25.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-11-22T12:21:00.000Z (over 1 year ago)
- Last Synced: 2025-01-25T06:42:06.656Z (over 1 year ago)
- Topics: java, spring-boot, spring-jpa, spring-web
- Language: Java
- Homepage:
- Size: 229 KB
- Stars: 1
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: readme.md
Awesome Lists containing this project
README
# Dining Review
Projeto de uma API de registro de avaliações de restaurantes. Dentre suas funcionalidades está a realização de cadastro de usuários e restaurantes, submissão de avaliações e moderação (através do perfil admin). O projeto é sugestão da trilha de desenvolvimento Java com Spring JPA da codecademy.com.
# Tecnologia
- **Linguagem:** Java com Spring Framework;
- **Banco de Dados:** H2;
- **Documentação da API:** Swagger;
- **Modelagem ERD/DFD:** Lucidchart.
# Autor
- Uellerson Carvalho
# Diagrama Entidade-Relacionamento
O ORM mapeará 3 tabelas diferentes:
- **User:** representada na classe ```UserModel.java```;
- **Restaurant:** representada na classe ```RestaurantModel.java```;
- **Ratings:** representada na classe ```RatingModel.java```.

As interfaces ```RestaurantRepository.java```, ```UserRepository.java``` e ```RatingRepository.java``` abstraem as operações de consulta ao banco de dados.
# Diagrama de Fluxo de Dados
Serão utilizados 11 processos (requisições) diferentes:

# Acesso
Caso seja utiliza a porta 8080,
- Acesso ao Swagger UI: ```http://localhost:8080/swagger-ui/index.html```
- Acesso ao H2: ```http://localhost:8080/h2```
# Trabalhos Futuros
- Utilizar DTO para evitar a possibilidade de envio do id através do corpo da requisição. Atualmente está sendo utilizado @JsonIgonore para ignorar valores que possam ser submetidos
- Criar uma interface gráfica simples para unir backend com um frontend
## Licença
[MIT](https://choosealicense.com/licenses/mit/)