Giter Site home page Giter Site logo

curso-algaworks's Introduction

Logo

Curso-AlgaWorks

Curso completo da AlgaWorks, SpringBoot Especialista SprintREST

23 Módulos, 173 temas.

Spring e Injeção de Dependências

  • Usando @ConfiguratioN e @Bean para definir beans [COMPLETO]
  • Conhecendo os pontos de injeção e a anotação @Autowired [COMPLETO]
  • Dependência opcional com @Autowired [COMPLETO]
  • Ambiguidade de beans e injeção de lista de beans [COMPLETO]
  • Desambiguação de beans com @Primary [COMPLETO]
  • Desambiguação de beans com @Qualifier [COMPLETO]
  • Desambiguação de beans com anotação customizada [COMPLETO]
  • Mudando o comportamento da aplicação com Spring Profiles [COMPLETO]
  • Criando métodos de callback do ciclo de vida dos beans [COMPLETO]
  • Publicando e consumindo eventos customizados [COMPLETO]
  • Configurando projetos Spring Boot com o application.properties [COMPLETO]
  • Substituindo propriedades via linha de comando e variáveis de ambiente [COMPLETO]
  • Criando e acessando propriedades customizadas com @Value [COMPLETO]
  • Acessando propriedades com @ConfigurationProperties [COMPLETO]
  • Alterando a configuração do projeto dependendo do ambiente (com Spring Profiles) [COMPLETO]
  • Ativando o Spring Profile por linha de comando e variável de ambiente [COMPLETO]

Introdução ao JPA Hibernate [COMPLETO]

  • Instalando o MySQL Server e MySQL Workbench [COMPLETO]
  • O que é JPA e Hibernate? [COMPLETO]
  • Adicionando JPA e configurando o Data Source [COMPLETO]
  • Mapeando entidades com JPA [COMPLETO]
  • Criando as tabelas do banco a partir das entidades [COMPLETO]
  • Mapeando o id da entidade para autoincremento [COMPLETO]
  • Importando dados de teste com import.sql [COMPLETO]
  • Consultando objetos do banco de dados [COMPLETO]
  • Adicionando um objeto no banco de dados [COMPLETO]
  • Buscando um objeto pelo id no banco de dados [COMPLETO]
  • Atualizando um objeto no banco de dados [COMPLETO]
  • Excluindo um objeto do banco de dados [COMPLETO]
  • Conhecendo o padrão Aggregate do DDD [COMPLETO]
  • Conhecendo e implementando o padrão Repository [COMPLETO]
  • Conhecendo e usando o Lombok [COMPLETO]
  • Desafio: Lombok e repositório de restaurantes [COMPLETO]
  • Mapeando relacionamento com @ManyToOne [COMPLETO]
  • A anotação @JoinColumn [COMPLETO]
  • Propriedade nullable de @Column e @JoinColumn [COMPLETO]
  • Desafio: mapeando entidades [COMPLETO]

REST com Spring

  • O que é REST?
  • Conhecendo as constraints do REST
  • Diferença entre REST e RESTful
  • Desenvolvedores de REST APIs puristas e pragmáticos
  • Conhecendo o protocolo HTTP
  • Usando o protocolo HTTP
  • Instalando e testando o Postman
  • Entendendo o que são Recursos REST
  • Identificando recursos REST
  • Modelando e requisitando um Collection Resource com GET
  • Desafio: collection resource de estados
  • Representações de recursos e content negotiation
  • Implementando content negotiation para retornar JSON ou XML
  • Consultando Singleton Resource com GET e @PathVariable
  • Customizando as representações XML e JSON com @JsonIgnore, @JsonProperty e @JsonRootName
  • Customizando a representação em XML com Wrapper e anotações do Jackson
  • Conhecendo os métodos HTTP
  • Conhecendo os códigos de status HTTP
  • Definindo o status da resposta HTTP com @ResponseStatus
  • Manipulando a resposta HTTP com ResponseEntity
  • Corrigindo o Status HTTP para resource inexistente
  • Status HTTP para collection resource vazia: qual usar?
  • Modelando e implementando a inclusão de recursos com POST
  • Negociando o media type do payload do POST com Content-Type
  • Modelando e implementando a atualização de recursos com PUT
  • Modelando e implementando a exclusão de recursos com DELETE
  • Implementando a camada de domain services (e a importância da linguagem ubíqua)
  • Refatorando a exclusão de cozinhas para usar domain services
  • Desafio: modelando e implementando a consulta de recursos de restaurantes
  • Modelando e implementando a inclusão de recursos de restaurantes
  • Desafio: Modelando e implementando a atualização de recursos de restaurantes
  • Desafio: implementando serviços REST de cidades e estados
  • Analisando solução para atualização parcial de recursos com PATCH
  • Finalizando a atualização parcial com a API de Reflections do Spring
  • Introdução ao Modelo de Maturidade de Richardson (RMM)
  • Conhecendo o nível 0 do RMM
  • Conhecendo o nível 1 do RMM
  • Conhecendo o nível 2 do RMM
  • Conhecendo o nível 3 do RMM

Super poderes do Spring Data JPA

Explorando mais do JPA e Hibernate

Pool de conexões e Flyway

Tratamento e modelagem de erros da API

Validações com Bean Validation

Testes de Integração

Boas práticas e técnicas para APIs

Modelagem avançada e implementação da API

Modelagem de aplicações, pesquisas e relatórios

Upload e download de arquivos

E-mails transacionais e Domain events

CORS e consumo da API com JavaScript e Java

Cache de HTTP

Documentação da API com OpenAPI, Swagger UI e SpringFox

Discoverability e HATEOAS: A Glória do REST

Evoluindo e versionando a API

Logging

Segurança com Spring Security e OAuth2

OAuth2 avançado com JWT e controle de acesso

Dockerizando a aplicação

Deploy em containers Docker da Amazon

Documentação da API com SpringDoc

Spring Authorization Server

Spring Boot 3

curso-algaworks's People

Contributors

eduardoalvez avatar

Stargazers

 avatar

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.