{"id":49573639,"url":"https://github.com/pitercoding/curso-springboot2-devdojo","last_synced_at":"2026-05-03T15:39:28.754Z","repository":{"id":340986623,"uuid":"1166659484","full_name":"pitercoding/curso-springboot2-devdojo","owner":"pitercoding","description":"PT-BR: Repositório com meus estudos do curso \"SpringBoot 2 Essentials\" do canal DevDojo. EN: Repository containing my studies from the \"SpringBoot 2 Essentials\" course by DevDojo.","archived":false,"fork":false,"pushed_at":"2026-03-17T18:21:10.000Z","size":114,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-05-03T15:39:06.305Z","etag":null,"topics":["course","devdojo","java","springboot2"],"latest_commit_sha":null,"homepage":"https://www.youtube.com/playlist?list=PL62G310vn6nFBIxp6ZwGnm8xMcGE3VA5H","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pitercoding.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-02-25T13:17:39.000Z","updated_at":"2026-03-17T18:21:14.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/pitercoding/curso-springboot2-devdojo","commit_stats":null,"previous_names":["pitercoding/curso-springboot2-devdojo"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/pitercoding/curso-springboot2-devdojo","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pitercoding%2Fcurso-springboot2-devdojo","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pitercoding%2Fcurso-springboot2-devdojo/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pitercoding%2Fcurso-springboot2-devdojo/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pitercoding%2Fcurso-springboot2-devdojo/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pitercoding","download_url":"https://codeload.github.com/pitercoding/curso-springboot2-devdojo/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pitercoding%2Fcurso-springboot2-devdojo/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32575114,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-03T06:36:36.687Z","status":"ssl_error","status_checked_at":"2026-05-03T06:36:09.306Z","response_time":103,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["course","devdojo","java","springboot2"],"created_at":"2026-05-03T15:39:27.856Z","updated_at":"2026-05-03T15:39:28.738Z","avatar_url":"https://github.com/pitercoding.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003ch1 align=\"center\"\u003e🍃 SpringBoot 2 Essentials - DevDojo 🍃\u003c/h1\u003e\n\nEste repositório contém meus estudos e implementações desenvolvidas ao longo da playlist **Spring Boot 2 Essentials** do canal DevDojo.\n\n🔗 **Playlist do curso:**  \nhttps://www.youtube.com/playlist?list=PL62G310vn6nFBIxp6ZwGnm8xMcGE3VA5H\n\n## 📚 Sobre o curso\n\nO curso aborda de forma prática o desenvolvimento de aplicações utilizando **Spring Boot**, passando desde os conceitos básicos até tópicos mais avançados como segurança, testes e monitoramento.\n\nDurante o curso, foi construída uma API REST completa utilizando boas práticas de desenvolvimento backend com Java.\n\n## 🧠 Conteúdos abordados\n\n### 🔹 Fundamentos do Spring Boot\n- O que é Spring Boot\n- Criação de projetos manualmente e via Spring Initializr\n- Anotações importantes:\n  - `@SpringBootApplication`\n  - `@Component`\n  - `@Autowired`\n- Hot reload com DevTools\n\n### 🔹 Desenvolvimento de APIs REST\n- Métodos HTTP:\n  - GET\n  - POST\n  - PUT\n  - DELETE\n- Uso de Request Params\n- Padronização de respostas\n\n### 🔹 Banco de Dados\n- Integração com **MySQL**\n- Uso de **Docker** para subir banco\n- **Spring Data JPA**\n- Paginação e ordenação\n- Logs SQL\n\n### 🔹 Boas práticas e arquitetura\n- DTOs com **MapStruct**\n- Tratamento de exceções:\n  - Exceptions customizadas\n  - Handler global\n- Validação de dados (Bean Validation)\n\n### 🔹 Consumo de APIs\n- Uso do **RestTemplate**\n  - GET\n  - POST\n  - PUT\n  - DELETE\n  - Exchange\n\n### 🔹 Testes\n- Testes unitários\n- Testes de integração\n- Testes com Spring Data JPA\n- Maven Profiles para testes\n\n### 🔹 Segurança\n- Introdução ao **Spring Security**\n- Autenticação em memória\n- Autenticação com banco de dados\n- CSRF Token\n- Proteção de rotas\n- Segurança a nível de método\n\n### 🔹 Documentação e Monitoramento\n- Documentação com **SpringDoc OpenAPI**\n- **Spring Boot Actuator**\n- Monitoramento com:\n  - Prometheus\n  - Grafana\n\n### 🔹 Deploy e Containers\n- Criação de imagens com **Jib**\n- Execução com **Docker Compose**\n\n## 🎯 O que eu aprendi\n\nDurante o curso, desenvolvi habilidades importantes como:\n\n- Criar APIs REST completas com Spring Boot\n- Trabalhar com banco de dados relacional usando JPA\n- Aplicar boas práticas de arquitetura em projetos backend\n- Implementar validação e tratamento de erros\n- Escrever testes unitários e de integração\n- Proteger aplicações com Spring Security\n- Documentar APIs profissionalmente\n- Monitorar aplicações em produção\n- Utilizar Docker no fluxo de desenvolvimento\n- Preparar aplicações para deploy\n\n## ❓ Por que estudar Spring Boot?\n\nEstudar Spring Boot é uma excelente escolha para quem deseja atuar como desenvolvedor backend Java. Alguns motivos:\n\n- 🚀 **Alta demanda no mercado** — amplamente utilizado em empresas\n- ⚡ **Produtividade** — reduz muita configuração do Spring tradicional\n- 🔧 **Ecossistema completo** — integração com segurança, banco, mensageria, etc.\n- 🏗️ **Arquitetura robusta** — ideal para microsserviços\n- 📈 **Escalabilidade** — usado em sistemas grandes e distribuídos\n- 🌎 **Comunidade forte** — muita documentação e suporte\n\n## 🛠️ Tecnologias utilizadas\n\n- Java\n- Spring Boot\n- Spring Data JPA\n- Spring Security\n- MySQL\n- Docker\n- Maven\n- JUnit\n- Mockito\n- MapStruct\n- Prometheus\n- Grafana\n\n## 📌 Considerações finais\n\nEste curso foi essencial para consolidar meus conhecimentos em desenvolvimento backend com Java e me preparar para desafios reais no mercado.\n\n## 🧑‍💻 Autor\n\n**Piter Gomes** — Aluno de Ciências da Computação (6º Período) \u0026 Desenvolvedor Full-Stack\n\n📧 [Email](mailto:piterg.bio@gmail.com) | 💼 [LinkedIn](https://www.linkedin.com/in/piter-gomes-4a39281a1/) | 💻 [GitHub](https://github.com/pitercoding)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpitercoding%2Fcurso-springboot2-devdojo","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpitercoding%2Fcurso-springboot2-devdojo","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpitercoding%2Fcurso-springboot2-devdojo/lists"}