🤖 Transforme seu Spring Boot 4 em ferramenta de IA com 3 anotações
Existe uma forma de expor qualquer serviço Spring Boot 4 como ferramenta de um agente de IA sem escrever uma linha de código de infraestrutura, e a maioria dos devs Java ainda não sabe que ela chegou de vez. Com o Spring AI 2.0, três anotações (@McpTool, @McpToolParam e @McpResource) fazem um método comum virar uma tool que o Claude, o ChatGPT ou qualquer cliente MCP enxerga e chama sozinho.
Neste artigo a gente vai do zero a um MCP Server rodando: o starter no build, o serviço anotado, a configuração de produção e o cliente consumindo. Tudo com código que parece de produção, do jeito que os sêniores fazem. Bora construir.
Structured Concurrency no JDK 25: o guia de migração do StructuredTaskScope
Você atualizou o projeto para o JDK 25, rodou o build e tomou um tapa na cara: o seu StructuredTaskScope não compila mais. A classe ShutdownOnFailure sumiu, o throwIfFailed() virou fumaça e a IDE pinta tudo de vermelho. Antes de xingar o Brian Goetz, respira. A notícia boa é que a API nova ficou melhor, mais enxuta e mais difícil de usar errado. A notícia chata é que ninguém colou um aviso gigante no release notes dizendo "ei, isso aqui mudou de verdade".
Esse artigo é o mapa da migração. Vamos ver o que saiu, o que entrou, como traduzir cada padrão antigo para o novo, como tratar erro e timeout no jeito novo e por que esse assunto virou pergunta de entrevista sênior em 2026. Tudo com código que compila no JDK 25.
Como preparar sua app Spring Boot 3 para o EOL de junho
Artigo sobre Spring Boot EOL.
🔒 O erro de subir Config Server em pod com volume shared
O erro número 1 de quem coloca o Spring Cloud Config Server em produção hoje é tratar o filesystem do pod como se fosse só seu. Volume compartilhado, basedir clonado pelo JGit e um vizinho de namespace que troca o caminho por um symlink na hora certa. O resultado é leitura e escrita de arquivos fora do diretório esperado.
Esse cenário virou o CVE-2026-41002 (CVSS 7.4), divulgado em 2026-05-06 e corrigido no Spring Cloud Config 4.3.3 e 5.0.3. É uma falha de TOCTOU, e ela cai direto na arquitetura cloud-native que a maioria de nós usa sem pensar duas vezes. Bora entender o que acontece e como blindar isso hoje mesmo.
Spring Boot 4: por que suas APIs REST passaram a dar 403
Você migrou pro Spring Boot 4, subiu em produção e de repente todo POST e PUT começou a responder 403 Forbidden. O GET funciona liso. O curl local passa. Os testes unitários estão verdes. Mas o front quebrou inteiro e ninguém mexeu numa linha de controller sequer. Você abre o log e não tem stack trace, não tem exceção de negócio, não tem nada. Só um 403 seco que aparece antes da requisição chegar no seu código.
Calma, não é maldição. A causa raiz não está no seu código: é o CSRF que agora vem ligado por padrão no Spring Security 7, que o Spring Boot 4 trouxe embutido. Nesse artigo a gente vai entender por que esse 403 aparece, qual a diferença entre o jeito errado e o jeito certo de resolver, e como ajustar sua configuração de segurança sem abrir um buraco que vai te assombrar na próxima auditoria. Bora?
Seu código blocking agora escala como reativo no Spring Boot 4
Existe uma forma de multiplicar o throughput da sua API sem reescrever uma linha de código de negócio, e a maioria dos devs ainda nem percebeu que ela chegou ligada de fábrica. No Spring Boot 4, Virtual Threads são o comportamento padrão no Tomcat e no Jetty. Aquele mesmo @RestController blocking que você escreve desde 2018 passa a segurar milhares de requisições concorrentes no mesmo hardware.
Durante anos a resposta para "como escalar isso aqui" foi reescrever tudo em WebFlux, com Flux, Mono e uma curva de aprendizado que afastava metade do time. O Spring Boot 4 muda essa conversa. Neste artigo você vai ver, com código de produção, o que realmente muda no seu projeto, quando o ganho é real e quando ele não acontece.
🔭 Spring Boot 4 tem observabilidade nativa sem Actuator
Existe uma forma de configurar traces, métricas e logs no Spring Boot 4 sem depender do Actuator como intermediário. A maioria dos devs ainda não sabe que o starter oficial de OpenTelemetry mudou tudo. Com 2 dependências no pom.xml você tem instrumentação automática de produção pronta para enviar dados a qualquer backend: Grafana, Jaeger, Datadog ou o seu próprio coletor OTLP.
Nesse artigo você vai entender por que o modelo anterior (Actuator + Micrometer + bridge OTEL) criava fricção desnecessária, como o novo starter do Spring Boot 4 simplifica tudo isso, e ver o código de configuração completo para colocar sua app em produção observável hoje.
🔒 Spring Cloud Config: 2 CVEs criticas que vazam segredos GCP
Imagina a cena: você está numa entrevista para uma vaga sênior de Java, tudo correndo bem, e o entrevistador solta a pergunta que separa quem decorou tutorial de quem já apanhou em produção. "Como você protege os segredos do seu Spring Cloud Config Server num cluster Kubernetes?" Você começa a falar de criptografia de propriedades, e ele te corta: "E o que você faria diante da CVE-2026-40981?"
Em 6 de maio de 2026 saíram duas falhas de severidade ALTA no Spring Cloud Config Server. Uma delas, a CVE-2026-40981, deixa qualquer cliente com acesso de rede ler segredos de qualquer projeto GCP usando um único header HTTP, sem autenticação nenhuma (CVSS 7.5). A outra, a CVE-2026-41002, abre o repositório Git do servidor a um ataque de tempo-de-checagem contra tempo-de-uso (TOCTOU). Neste artigo você vai entender o vetor de cada uma, ver o código que demonstra o problema, aplicar o patch certo e, de quebra, ficar pronto para aquela pergunta de entrevista.
DevOps Classico Sumiu das Vagas Java Senior (o que fazer)
Voce mandou curriculo para 5 vagas senior esse mes. Todas tinham descricoes parecidas: Spring Boot, Kubernetes, AWS. Voce conhece esses caras de cor. Mas ai apareceu uma linha que voce leu duas vezes: "experiencia com Platform Engineering e IDPs". IDP? Voce pausou. Abriu o Google. "Internal Developer Platform". Um conceito que voce nao estudou, que nao estava nas suas aulas, que nao apareceu no trabalho atual. E ali voce percebeu: o mercado virou de pagina e ningum te avisou.
⚡ Como usar Virtual Threads do jeito certo no Spring Boot 3
Você habilitou Virtual Threads no Spring Boot, botou spring.threads.virtual.enabled=true no application.yaml, subiu a aplicação em produção e... nada. O throughput melhorou uns 10%, a latência sob carga continua a mesma, e os alertas de "pool esgotado" ainda aparecem às sextas-feiras. Você fez tudo certo pelo livro. E mesmo assim não funcionou como prometido.
Infra Kubernetes em Java: como o Pulumi elimina o YAML
Existe uma forma de gerenciar toda a infraestrutura Kubernetes com código Java real, tipado, testável e versionável no Git. A maioria das equipes Spring Boot ainda não sabe que o Pulumi Java SDK permite isso. Sem YAML de 400 linhas. Sem "funciona na minha máquina". Infra como código de verdade.
🔒 CVE-2026-39852: Por que Segurança de API Quarkus Vai Cair na Sua Entrevista
Toda vaga de Dev Java sênior em 2026 pede experiência com segurança de APIs REST. Mas quando o entrevistador pergunta "você já trabalhou com um bypass de autorização?", a maioria responde com teoria. Os candidatos que chegam com um caso real, com código, exploit e fix, são os que passam para a próxima fase.
O CVE-2026-39852 do Quarkus é exatamente esse caso. Uma vulnerabilidade crítica que afeta todas as versões antes de 3.34.7 (LTS) e 3.35.2 (main): um atacante acessa /api/admin;bypass e toda a sua configuração de @RolesAllowed vira pó, com o CI verde e os testes passando normalmente.
⚡ Seu projeto vai quebrar com JUnit 6 (e você ainda não sabe)
Era segunda-feira de manha, build verde no CI, ninguem tocou nos testes em semanas. Voce atualiza a versao do Spring Boot no pom.xml, empurra o commit e vai buscar um cafe. Quando volta: 47 testes falhando. ClassNotFoundException: org.junit.platform.runner.JUnitPlatform. A pipeline quebrando antes mesmo de chegar no deploy. Aqui esta a causa raiz, e ela nao esta no seu codigo de negocio.
O JUnit 6 foi lancado em setembro de 2025 e o Spring Boot 4 ja assume JUnit 6 como padrao. Quem esta atualizando o ecossistema Spring sem preparar a suite de testes esta tomando um choque que nao estava no changelog. Nesse artigo voce vai entender exatamente o que mudou, o que vai quebrar e como fazer a migracao sem drama.
Página 1 de 26