Skip to content

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

94 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation


Spring Redis Kibana RabbitMQ Swagger Docker Java CI with Maven


☁️ Arch-Ref Spring

Esse projeto é um template de arquitetura de referência para projetos em Java 17 com spring boot e maven


📚 Resources

Esse microserviço apresenta o recurso de personagem (character) na qual haja um gerencialmente desse recursos como CRUD


✔️ Character

/character

Recurso que representa um personagem qualquer como um entidade

METHOD ENDPOINT DESCRIPTION ESCOPE
POST / Cria um novo personagem REQUEST
POST /random Cria um personagem aleatório REQUEST
DELETE /{characterId} Remove um personagem específico pelo Id REQUEST
PUT /{characterId} Atualiza um personagem específico pelo Id REQUEST
GET /{characterId} Lista um personagem específico pelo Id REQUEST

📐 Arquitetura

Esse microsserviço foi estruturado usando arquitetura hexagonal seguindo a estrutura de pastas abaixo

  /src
    /adapters
      /amqp
      /http
        /inbound
    /config
    /domain
      /entities
      /repositories	
        /entity
      /services
    /infrasctructure
      /amqp
        /config
      /database
        /mongo
          /entity
      /http
      /logger

Captura de Tela 2024-08-18 às 18 28 54


⌛️ Serviços

  • 🌐 HTTP

    Esse microsserviço faz proxy com uma API pública de personagens da séries Marvel

  • 🟥 Redis

    Esse microsserviço armazena e faz leitura de serviço em cache com Redis.

  • 🍃 MongoDB

    Esse microsserviço usa armazenamento com banco de dados não relacional com MongoDB.

  • 🟠 RabbitMQ

    Esse microsserviço usa implementação de event broker com RabbitMQ com publicadores e consumidores da fila.


⚡ Getting started

Executa o docker compose para subir as imagens necessárias em container docker (docker-compose-deps.yaml)

cd docker && docker-compose up -d

☕ Executar

Compilar o projeto

mvn clean install

Executando local

mvn spring-boot:run 

or

java -jar target/archref-0.0.1-SNAPSHOT.jar

Executando os testes

mvn test

Swagger

http://localhost:{you-port}/v1/api-docs

😄 Contribua

Quer fazer parte desse projeto? Clique AQUI e abra um pull request 🧩

About

☁️ Arch-Ref Spring

Resources

Stars

Watchers

Forks

Releases

Packages

Used by

Contributors

Languages