API REST desenvolvida com Java e Spring Boot para trabalhar com dados sensíveis, aplicando criptografia durante a persistência das informações.
- Cadastro de dados sensíveis
- Consulta de dados sensíveis por identificador
- Atualização de dados sensíveis
- Exclusão de dados sensíveis
- Criptografia de informações sensíveis
- Documentação da API com Swagger/OpenAPI
- Monitoramento com Spring Boot Actuator
- Métricas da aplicação
- Java 21
- Spring Boot
- Spring Web
- Spring Data JPA
- H2 Database
- Spring Boot Actuator
- Springdoc OpenAPI
- Maven
- Docker
- Java 21
- Maven
- Docker (opcional)
A aplicação utiliza H2 Database em memória para persistência durante a execução.
Principais configurações:
| Propriedade | Descrição |
|---|---|
spring.datasource.url |
URL do banco H2 em memória |
spring.datasource.username |
Usuário utilizado para conexão com o H2 |
spring.datasource.password |
Senha utilizada para conexão com o H2 |
spring.h2.console.enable |
Habilita o console do H2 |
spring.h2.console.path |
Caminho do console do H2 |
spring.jpa.hibernate.ddl-auto |
Estratégia de atualização do schema |
management.endpoints.web.exposure.include |
Endpoints do Actuator expostos |
Clone o repositório:
git clone https://github.com/bispobr/Spring-java-criptografia.git
cd Spring-java-criptografiaExecute com Maven:
./mvnw spring-boot:runNo Windows:
mvnw.cmd spring-boot:runA API estará disponível em:
http://localhost:8080
POST /dados-sensivel
Content-Type: application/jsonGET /dados-sensivel/{id}PUT /dados-sensivel/{id}
Content-Type: application/jsonDELETE /dados-sensivel/{id}Os detalhes dos contratos de entrada e saída podem ser consultados na documentação OpenAPI da aplicação.
Com a aplicação em execução:
http://localhost:8080/swagger-ui/index.html
A documentação também pode ser consultada através da integração do Swagger com o Actuator.
O console do H2 está disponível em:
http://localhost:8080/h2-console
Endpoint de saúde:
http://localhost:8080/actuator/health
Endpoint de métricas:
http://localhost:8080/actuator/metrics
Para gerar o artefato da aplicação:
mvn clean packagePara gerar a imagem Docker:
docker build -t criptografia .Para executar o container:
docker run -p 8080:8080 criptografiaExecute os testes com:
mvn testProjeto de estudo desenvolvido para praticar desenvolvimento de APIs REST com Spring Boot, persistência com JPA/H2, tratamento de dados sensíveis e integração com recursos de monitoramento da aplicação.