08‐Spring Boot DevTools - JulianeMaran32/Java-with-Spring-Boot GitHub Wiki
Problema: Ao desenvolver uma aplicação Spring Boot, sempre que você altera o código-fonte, precisa reiniciar manualmente a aplicação para ver as mudanças. Isso torna o processo de desenvolvimento mais lento e cansativo.
Solução: O Spring Boot DevTools facilita isso, reiniciando automaticamente a aplicação sempre que detecta mudanças no código.
-
Adicione a dependência do DevTools ao arquivo
pom.xml
(caso esteja usando Maven):<dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-devtools</artifactId> <optional>true</optional> </dependency>
-
Se estiver usando o IntelliJ IDEA Community Edition, será necessário configurar algumas opções:
- Vá para Preferências → Build, Execution, Deployment → Compiler e marque a opção Build project automatically.
- Depois, em Preferences → Advanced Settings, marque a opção Allow auto-make to start even if developed application is running.
-
Agora, quando você fizer qualquer alteração no código, a aplicação será reiniciada automaticamente, sem precisar fazer isso manualmente.
-
Organizando o projeto:
- Crie uma nova pasta chamada
01-spring-boot-overview
para armazenar os projetos. - Dentro dela, mova a aplicação existente (
mycoolapp
) e renomeie para01-spring-boot-demo
. - Faça uma cópia dessa pasta e renomeie para
02-dev-tools-demo
.
- Crie uma nova pasta chamada
-
Abrindo o projeto no IntelliJ IDEA:
- Feche qualquer projeto aberto.
- No IntelliJ, abra a pasta
02-dev-tools-demo
. - O IntelliJ sincronizará as dependências do Maven automaticamente.
-
Configurando as preferências do IntelliJ:
- Vá para Build, Execution, Deployment → Compiler e ative a opção Build project automatically.
- Vá para Advanced Settings e ative a opção Allow auto-make to start even if developed application is running.
-
Testando o DevTools:
- No arquivo
pom.xml
, certifique-se de que a dependência do DevTools foi adicionada. - Execute a aplicação (
MycoolApplication.java
). - O servidor Tomcat iniciará na porta
8080
.
- No arquivo
-
Criando um novo endpoint:
- No controlador REST, adicione o seguinte código para criar um novo endpoint:
@GetMapping("/workout")
public String getDailyWorkout() {
return "Corra 5km!";
}
- Salve o arquivo e observe o console do IntelliJ. O Spring Boot reiniciará automaticamente a aplicação.
- Acesse
http://localhost:8080/workout
no navegador e veja a resposta.
-
Adicionando mais um endpoint para testar:
- Adicione este novo método ao controlador REST:
@GetMapping("/fortune")
public String getDailyFortune() {
return "Hoje é o seu dia de sorte!";
}
- Salve o arquivo e veja se a aplicação recarrega automaticamente.
- Acesse
http://localhost:8080/fortune
para testar o novo endpoint.
O Spring Boot DevTools é uma ferramenta essencial para melhorar a produtividade no desenvolvimento de aplicações Spring Boot. Com ele, as mudanças no código são aplicadas automaticamente sem precisar reiniciar a aplicação manualmente. Essa funcionalidade economiza tempo e torna o processo de desenvolvimento muito mais eficiente. 🚀