An open API service indexing awesome lists of open source software.

https://github.com/danilomeneghel/spring-boot-rabbitmq

Projeto de envio de messageria utilizando RabbitMQ e Java
https://github.com/danilomeneghel/spring-boot-rabbitmq

docker docker-compose java-11 lombok maven messageria queue rabbitmq spring-boot

Last synced: 3 months ago
JSON representation

Projeto de envio de messageria utilizando RabbitMQ e Java

Awesome Lists containing this project

README

          

# Spring Boot RabbitMQ

Projeto de envio de messageria utilizando RabbitMQ e Java.

## Características

- Messageria
- Producer
- Consumer
- API RESTful

## Requisitos

- Java JDK 11
- Apache Maven >= 3.6.3 (Opcional)
- Docker (Opcional)

## Tecnologias

- Java
- Maven
- Spring
- Lombok
- Docker

## Instalação

```
$ git clone https://github.com/danilomeneghel/spring-boot-rabbitmq.git

$ cd spring-boot-rabbitmq
```

## Maven

Primeiro rode o RabbitMQ.

Caso não tenha o RabbitMQ instalado, execute o seguinte comando via Docker:

```
$ docker run -d -p 5672:5672 -p 15672:15672 --name rabbitmq rabbitmq:management
```

Para carregar o projeto, digite no terminal:

```
$ ./mvnw spring-boot:run -Dspring-boot.run.profiles=dev
```

Aguarde carregar todo o serviço web.

## Docker (Opcional)

Para rodar o projeto via Docker-Compose, basta executar o comando:

```
$ docker-compose up
```

Aguarde baixar as dependências e carregar todo o projeto, esse processo é demorado.

Caso conclua e não rode pela primeira vez, tente novamente executando o mesmo comando.

Para encerrar tudo digite:

```
$ docker-compose down
```

## RabbitMQ

Para acessar o painel do RabbitMQ, abra o navegador e digite o endereço:

http://localhost:15672

Em seguida, digite "guest" para usuário e senha.

## Teste da Messageria

Para testar a aplicação abra o Postman e insira os seguintes dados:

POST

http://localhost:8282/book/send-message

```
{
"author": "aaaaaaaaaa",
"title": "bbbbbbbbbb",
"publisher": "cccccccc",
"genre": "m"
}
```

Após o envio retornará a seguinte mensagem:

```
Book message sent successfully.
```

E no console:

```
Author ---------> aaaaaaaaaa
Title ----------> bbbbbbbbbb
Publisher ------> cccccccc
Genre ----------> m
```

## Licença

Projeto licenciado sob The MIT License (MIT).

Desenvolvido por

Danilo Meneghel

danilo.meneghel@gmail.com

http://danilomeneghel.github.io/