Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/keidsondesigner/springboot-tdr
https://github.com/keidsondesigner/springboot-tdr
Last synced: 6 days ago
JSON representation
- Host: GitHub
- URL: https://github.com/keidsondesigner/springboot-tdr
- Owner: keidsondesigner
- Created: 2024-04-20T02:12:46.000Z (7 months ago)
- Default Branch: master
- Last Pushed: 2024-04-25T00:18:02.000Z (7 months ago)
- Last Synced: 2024-11-08T09:15:19.033Z (6 days ago)
- Language: Java
- Size: 86.9 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: readme.md
Awesome Lists containing this project
README
# Projeto Spring Boot com Java 17
**Descrição**:
Este projeto é uma aplicação Spring Boot desenvolvida com Java 17. Ela fornece uma API RESTful para gerenciar entidades Cliente.# Tecnologias Utilizadas
- Spring Boot: Framework para desenvolvimento rápido e simplificado de aplicações Java.- Java 17: A versão mais recente da linguagem Java, oferecendo recursos de produtividade e desempenho aprimorados.
- Spring Web: Módulo do Spring Framework para desenvolvimento de APIs RESTful.
- Spring DevTools: Fornece reinicialização dinâmica de código e atualização automática do navegador, facilitando o desenvolvimento.
- Lombok: Simplifica o código Java eliminando a necessidade de boilerplate para getters, setters, equals, toString, etc.
- Spring Data JPA: Abstrai o acesso ao banco de dados relacional PostgreSQL, permitindo interações com entidades usando JPA.
- PostgreSQL Driver: Driver JDBC para conectar ao banco de dados PostgreSQL.
- Hibernate Validator: Fornece validação de dados para entidades usando anotações do Bean Validation API.
# A API expõe os seguintes endpoints para gerenciar os clientes:
**POST** http://localhost:8080/clientes: Cria um novo cliente. O corpo da requisição deve conter um objeto ClienteEntity válido.
**PUT** http://localhost:8080/clientes: Atualiza um cliente existente. O corpo da requisição deve conter um objeto ClienteEntity válido.
**GET** http://localhost:8080/clientes/{id}: Recupera um cliente pelo seu identificador (ID).
**GET** http://localhost:8080/clientes: Recupera uma lista de todos os clientes.
**GET** http://localhost:8080/clientes/busca?nome={nome}: Recupera um cliente pelo seu nome (parâmetro de consulta nome).
# Execução de uso dos endpoints:
>Criando um Cliente (POST /clientes):
Método HTTP: POST
URL: http://localhost:8080/clientes
Corpo da Requisição:
Conteúdo: Objeto JSON representando o novo cliente.
Tipo de Conteúdo: application/jsonExemplo:
```
{
"nome": "João da Silva",
"ativo": "true",
}
```
>Atualizando um Cliente (PUT /clientes):Método HTTP: PUT
URL: http://localhost:8080/clientes
Utilize o ID do cliente que deseja atualizar, no corpo da RequisiçãoConteúdo: Objeto JSON representando o cliente atualizado.
Tipo de Conteúdo: application/jsonExemplo:
```
{
"id": 1,
"nome": "João da Silva Mendes",
"ativo": "true"
}
```>Consultando um Cliente por ID (GET /clientes/{id}):
Método HTTP: GET
URL: http://localhost:8080/clientes/{id}
Substitua {id} pelo ID do cliente que deseja consultar.
Observação: Nenhum dado precisa ser enviado no corpo da requisição para essa consulta.
>Consultando Lista de Clientes (GET /clientes):Método HTTP: GET
URL: http://localhost:8080/clientes
Observação: Nenhum dado precisa ser enviado no corpo da requisição para essa consulta.
>Consultando Cliente por Nome (GET /clientes/busca?nome={nome}):Método HTTP: GET
URL: http://localhost:8080/clientes/busca?nome={nome}
Substitua {nome} pelo nome do cliente que deseja consultar.
Observação: Nenhum dado precisa ser enviado no corpo da requisição para essa consulta.
# Execução da Aplicação
>Pré-requisitos:
- Java 17 instalado e configurado no PATH do sistema.
- Banco de dados PostgreSQL instalado e configurado (opcional, para persistência real).
- Configuração do Banco de Dados (Opcional):
- Edite a configuração do banco de dados (por exemplo, application.properties) para especificar os detalhes de conexão ao PostgreSQL.
- Compilação e execução:
- Execute o comando mvn clean install para compilar o projeto.
- Execute a classe principal (geralmente com.example.ProjetoApplication) usando o comando java -jar target/projeto-0.0.1-SNAPSHOT.jar.