BJCP API é uma API REST que utiliza o framework Spring e dados do Beer Judge Certification Program para fornecer informações sobre estilos de cerveja.
- JAVA 18 - Linguagem de programação (JDK 18).
- Spring - Framework MVC.
- Apache Maven 3.8.6 - Gerenciador de dependências.
- IntelliJ - IDE para desenvolvimento.
- Docker - Serviço de virtualização.
- H2 - Banco de dados em memoria.
Requisições para a API devem seguir os padrões:
Método | Rota | Descrição |
---|---|---|
GET |
/api/v1/styles |
Retorna uma lista ( JSON ) com os dados de todos os estilos de cervejas disponíveis no BJCP |
Clone o projeto utilizando a flag --recursive
para clonar o submodulo do BJCP-csv.
Para iniciar a api utilize o comando:
docker-compose up
Este comando irá iniciar um contêiner com a api na porta 8080
.
Para gerar o artefato da api utilize o comando:
mvn clean install
Este comando irá gerar um arquivo jar
na pasta target
do projeto.
As dependências são declaradas no arquivo pom.xml.
Dependência | Descrição | Versão |
---|---|---|
H2database | Banco de dados relacional escrito em Java que funciona em memória | 2.1.214 |
Spring-boot-starter-data-jpa | Responsável por conectar a aplicação Spring como o banco de dados | 2.7.4 |
Spring-boot-starter-web | Responsável pela camada MVC do Spring | 2.7.4 |
Springfox-swagger-ui | Documentação JSON API para aplicações Spring | 3.0.0 |
SpringSecurity | Responsável pela segurança da API | 6.0 |
A API utiliza o Spring Security para autenticação e autorização de usuários.
Para configurar o Oauth2 edite o arquivo appllication.yaml e inclua os ids e segredo do cliente fornecidos pelo google.
Minhas informações de contato 📬
The 2015 guidelines were replaced by the 2021 guidelines, so the prior version is no longer valid. you can find the current version on www.bjcp.org
Copyright © 2015, BJCP, Inc.
The BJCP grants the right to make copies for use
in BJCP-sanctioned competitions or for educational/judge training purposes.
All other rights reserved.