Code Monkey home page Code Monkey logo

book-store-api's Introduction

Book Store Api

Descrição do Projeto

Projeto consiste na criação de uma api para uma biblioteca, onde os livros serão cadastrados, atualizados e deletados.

Cada livro terá uma categoria associada, onde para cadastrar um livro deverá preexistir uma categoria para o mesmo.

Após excutado o projeto localmente, para ver a documentação acesse: swagger

End-Points do Projeto

Para Livros

  • [GET] consultar todos os livros: {url}/book/books

  • [GET] consultar 1 livro especifico, passar id por parametro na requisição: {url}/book/{id}

  • [GET] consultar livros por categoria, passar id de categoria query ex: {url}/book?category=1

  • [POST] criar Livro, passar id de categoria no corpo da requisição: {url}/book/create

{
    "title": "type string",
    "author": "type string",
    "text": "type string",
    "categoryId": "type long",
}
  • [PutORPatch] atualizar Livro, passar id do livro por parametro da requisição: {url}/book/update/{id}
{
    "title": "type string",
    "author": "type string",
    "text": "type string",
}
  • [DELETE] deletar Livro, passar id do livro por parametro da requisição: {url}/book/delete/{id}

Para Categoria

  • [GET] consultar todas as categorias: {url}/category/categories

  • [GET] consultar 1 categoria especifica, passar id por parametro na requisição: {url}/category/{id}

  • [GET] consultar categoria, sem retornar lista de livros: {url}/category

  • [POST] criar Categoria: {url}/category/create

{
    "name": "type string",
    "description": "type string",
}
  • [Put] atualizar Categoria, passar id da Categoria parametro da requisição: {url}/category/update/{id}
{
    "name": "type string",
    "description": "type string",
}
  • [DELETE] deletar Categoria, passar id da categoria parametro da requisição: {url}/category/delete/{id}

Descrição da Api

Executar Api localmente:

  • Para clonar o projeto: git clone https://github.com/TaylanTorres09/book-store-api.git

  • Para Executar o projeto precisasse:

    • Java JDK. Este projeto está usando a versão 17.
    • Para perfil de Teste, Banco H2 utilizado em memória, coloquei neste pois é um banco de fácil configuração e utilização.
    • Para perfil de Produção, Banco MySQL.
  • Extensões do vscode utilizadas:

  • Para seleção do perfil test para perfil de teste e dev para perfil de desenvolvimento. ApplicationProperties

  • Configuração do banco de dados de Teste.

ApplicationProperties

  • Configuração do banco de dados de Dev.

ApplicationProperties

  • Na pasta src/main, execute o arquivo BookstoreApplication.java

BookstoreApplication

  • Após executado o projeto acesse swagger para ver documentação.

Swagger

  • Para testar a api você pode utilizar ferramentas de client como:

Próximos Passos

  • Fazer interfaces no front-end.
  • Implementar Cobertura de testes.

Autor

book-store-api's People

Watchers

 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.