
Nesta aula vamos criar um projeto com o Spring Initializr (https://start.spring.io) e depois abrir no Eclipse STS e IntelliJ IDEA.
O Spring Tools (https://spring.io/tools) é um Eclipse turbinado para auxiliar no desenvolvimento com Spring.
Nesta aula vamos aprender a criar o projeto com a versão IntelliJ IDEA Ultimate.
A versão IntelliJ IDEA CE (Community Edition) não tem wizard para criar um projeto para Spring, mas podemos abrir um projeto que já existe e utilizar normalmente.
O arquivo pom.xml é o arquivo de configuração do Maven, é nele que vamos declarar as dependências do projeto.
Esta é a classe de inicialização do SpringBoot.
Se você já é um desenvolvedor e conheçe o conceito de web services, este resumo pode facilitar seu aprendizado como Spring Boot. Muitas vezes como já implementamos web services em outras linguagens e frameworks, portanto para aprender outra tecnologia, uma simples estudada é suficiente, pois os conceitos são os mesmos e basta comparar as diferenças de sintaxe e código entre cada framework.
Se você não conhece muito bem o conceito de web services, recomendo estudar as aulas passo a passo.
Nesta aula vamos aprender a criar um controlador básico do Spring.
A anotação @RequestMapping é utilizada para mapear um recurso da sua API para um método da classe de controller.
Nesta aula vamos aprender como utilizar o @RequestMapping para mapear os diferentes métodos do protocolo HTTP.
A anotação @RequestParam é utilizada para ler parâmetros da request.
A anotação @PathVariable é utilizada para ler parâmetros passados no PATH (caminho) da URL.
O projeto Lombok (https://projectlombok.org/) possui diversas anotações que ajudam a diminuir a quantidade de código.
Nesta aula vamos utilizar o padrão DTO (Data Transfer Object) para retornar os dados da API.
https://www.martinfowler.com/eaaCatalog/dataTransferObject.html
Nesta aula vamos continuar estudando o padrão DTO, assim como Optional e Lambdas.
O Model Mapper (http://modelmapper.org) é uma lib que ajuda a copiar atributos de uma classe para outra, facilitando o trabalho de criar um DTO.
https://carros-springboot.herokuapp.com/swagger-ui.html
http://localhost:8080/swagger-ui.html
Neste curso você irá aprender a criar uma API RESTful com SpringBoot. Você poderá escolher entre utilizar o Eclipse Spring Tools (STS) ou o IntelliJ IDEA para desenvolver o código.
Confira o que você vai aprender:
Criar um projeto com SpringBoot
Criar um web service que se conecta no banco de dados MySQL
Retornar os dados no formato JSON
Criar um web service CRUD completo para criar, buscar, editar e excluir os dados
Aprender a utilizar o framework de persistência JPA (Java Persistence Api)
Aprender sobre o padrão rest e códigos de retorno HTTP (220, 404, 500, etc)
Utilizar libs que aceleram a produtividade do desenvolvimento;
Segurança em web services (Basic Auth e JWT Token);
Testes unitários
Documentação com Swagger;
Deploy do servidor na nuvem (Heroku)