Aplicação Spring Boot que gera QR Codes e os armazena no AWS S3. Este projeto demonstra a integração da biblioteca ZXing do Google para geração de QR Codes e do AWS S3 para armazenamento.
Esta seção fornece instruções para configurar e executar a aplicação de geração de QR Codes.
- JDK Java 21
- Maven
- Docker
- Conta AWS com acesso ao S3
- AWS CLI configurado com credenciais apropriadas
Crie um arquivo .env na raiz do projeto com as seguintes variáveis:
AWS_ACCESS_KEY_ID=sua_access_key
AWS_SECRET_ACCESS_KEY=sua_secret_key
AWS_REGION=sua_regiao
AWS_BUCKET_NAME=nome_do_seu_bucket- Crie o arquivo
.envconforme descrito acima - Compile o projeto:
mvn clean package
- Execute a aplicação:
mvn spring-boot:run
-
Construa a imagem Docker:
docker build -t qrcode-generator:X.X . -
Execute o container:
docker run --env-file .env -p 8080:8080 qrcode-generator:X.X
- Crie um bucket S3 na sua conta AWS
- Atualize o
AWS_BUCKET_NAMEno arquivo.envou no comando Docker - Garanta que suas credenciais AWS possuem permissões adequadas para acessar o bucket S3
Gera um QR Code a partir do texto fornecido e o armazena no AWS S3. O QR Code será gerado como uma imagem PNG com dimensões de 200x200 pixels.
Parâmetros
| Nome | Obrigatório | Tipo | Descrição |
|---|---|---|---|
text |
obrigatório | string | Conteúdo de texto que será codificado no QR Code. Pode ser qualquer valor de string que você deseja converter em QR Code. |
Resposta
{
"url": "https://seu-bucket.s3.sua-regiao.amazonaws.com/uuid-aleatorio"
}Resposta de Erro
Caso ocorra algum erro durante a geração do QR Code ou upload para o S3, a API retornará um erro 500 (Internal Server Error).
Exemplo de Uso
curl -X POST http://localhost:8080/qrcode
-H "Content-Type: application/json"
-d '{"text": "https://example.com"}'