Git Product home page Git Product logo

golden-raspberry-awards-api's Introduction

Golden Raspberry Awards Api

Foi desenvolvida uma api para o prêmio de pior filme Golden Raspberry Awards, com o intuito de ler um arquivo CSV, inseri-lo na base de dados, e retornar ao client, quando solicitado, os produtores com maior e menor intervalo entre os prêmios.

A api pode ser acessada pelo link API

A Api foi desenvolvida utilizando a linguagem de programação JAVA. A base de dados utilizada, coforme o solicitado, foi feita utilizando o H2.

Base de dados

Como a idéia é termos um banco de dados em memória, criado e manipulado apenas em tempo de execução, então, o banco de dados H2 foi escolhido.

Documentação

O código esta todo documentando utilizando o padrão de documentação Java Doc, e a api possui a documentação do tipo Swagger, que posse ser acessada em Swagger API

Docker

O serviço encontra-se também disponível no docker hub, pode ser acessado clicando Aqui, e também, pode ser executado com o seguinte comando.

docker run --network=host 
-itd wallacehenriquee/golden-raspberry-awards-api:latest

Dependências do projeto

  • SpringBoot 2.1.6.RELEASE
  • Lombok
  • Spring Jpa
  • Springfox
  • H2 Database
  • Spring Web
  • JavaPow

Leitura de CSV

A leitura do arquivo CSV foi feita utilizando uma biblioteca desenvolvida por mim, chamada JavaPow, que tem o intuito de facilitar a leitura e escrita de arquivos xls, xlsx, csv, entre outros. Para utiliza-la, basta importar a biblioteca, e utiliza-la onde necessário por meio de annotations, semelhante ao uso do Hibernate. A biblioteca encontra-se em meu github, e pode ser acessada pelo link JavaPow.

Possiveis melhorias

  • Criar novos endpoints para listagem e gerenciamento dos demais dados.
  • Adicionar autenticação utilizando JWT (Caso necessário).
  • Geração de código nativo linux utilizando GraalVM.
  • Integra-la ao outros serviços como um micro serviço utilizando as ferramentas do spring cloud.

golden-raspberry-awards-api's People

Contributors

wallacehenriquesilva avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.