Tecnologia
O Spring Security 7.0 GA entrou no release train de junho de 2026 junto com o Spring Boot 4.0. E tem um detalhe que ninguem te avisou no calendario: o Spring Boot 3.5 perde suporte OSS em 30 de junho de 2026. Ou seja, o relogio da migracao ja esta correndo, e o seu SecurityConfig e a primeira coisa que vai quebrar no build.
Se voce ja tentou subir um projeto pro Boot 4 e tomou uma chuva de erros de compilacao no filtro de seguranca, este artigo e pra voce. Bora destrinchar, na pratica, tudo que mudou no Security 7 e montar um checklist de migracao com codigo antes e depois, do jeito que os seniores fazem.
- Detalhes
- Escrito por: Jorge Demetrio
- Categoria Pai: Linguagem de programação
- Categoria: Java
-
Também disponível:
- Acessos: 68
Você atualizou a versão do Spring AI, subiu pra homologação e o agente simplesmente parou de chamar as ferramentas. Sem erro. Sem stack trace. Sem nada nos logs. O modelo responde como se as tools nunca tivessem existido, e você acabou de gastar a tarde procurando bug no lugar errado.
Esse cenário vai ser comum quando o Spring AI 2.0 chegar ao GA. O RC1, lançado em 6 de junho de 2026, removeu o loop interno de execução de tools de todos os ChatModels. Se o seu código ainda registra ferramentas por nome com toolNames(), elas vão virar fantasma. Nesse artigo você vai ver exatamente o que mudou e como migrar antes que o GA te pegue desprevenido.
- Detalhes
- Escrito por: Jorge Demetrio
- Categoria Pai: Linguagem de programação
- Categoria: Java
-
Também disponível:
- Acessos: 79
Você abriu a vaga de Backend Sênior, leu "experiência com IA generativa no ecossistema Java" e pensou que sabia o suficiente. Aí veio a pergunta que separou a sala: "qual a diferença entre Spring AI 1.x e 2.0, e o que quebra no seu tool calling quando você migra?". Quem só tinha lido o título do release travou ali.
A partir de junho de 2026, essa pergunta entrou no roteiro das entrevistas técnicas de backend Java. O Spring AI 2.0 chegou em release candidate carregando o Spring Boot 4 como dependência obrigatória, e mudou o jeito como as ferramentas (tools) são executadas. Bora ver, na prática, o código antes e depois e a resposta que mostra senioridade de verdade.
- Detalhes
- Escrito por: Jorge Demetrio
- Categoria Pai: Linguagem de programação
- Categoria: Java
-
Também disponível:
- Acessos: 76
Existe uma forma de fazer seu microservice Java subir em 50 milissegundos em vez de 8 segundos, sem reescrever uma linha da regra de negócio. A maioria dos devs ainda empacota a JVM inteira dentro do container e paga a conta disso todo mês no Fargate.
Com GraalVM Native Image e o AWS SDK for Java 2.x, você compila a aplicação para um binário nativo e o startup despenca de cara. Nesse artigo você vai montar o build do zero, com Maven, Dockerfile e deploy no Fargate, e ainda vai entender por que essa decisão virou pergunta de entrevista sênior em fintech.
- Detalhes
- Escrito por: Jorge Demetrio
- Categoria Pai: Cloud Computing
- Categoria: Cloud AWS
- Acessos: 77
Em abril de 2026, ferramentas de IA varreram o ecossistema Spring e encontraram 26 CVEs em um único mês. A release train que deveria chegar em maio foi adiada duas vezes. Chega agora, semana de 8 a 14 de junho. Se você tem Spring em produção, esta é a semana para agir.
- Detalhes
- Escrito por: Jorge Demetrio
- Categoria Pai: Linguagem de programação
- Categoria: Java
- Acessos: 92
JDK 27 entrou em Rampdown Phase One em 4 de junho de 2026. GA previsto para 14 de setembro de 2026. Dois JEPs vão reduzir o footprint de memória de toda app Java em produção sem alterar uma linha de código: JEP 534 (Compact Object Headers por padrão) e JEP 523 (G1GC como default universal).
- Detalhes
- Escrito por: Jorge Demetrio
- Categoria Pai: Linguagem de programação
- Categoria: Java
- Acessos: 87
Se você tem código Spring AI que usa toolNames(), SpringBeanToolCallbackResolver ou depende do loop interno de tool execution dentro do ChatModel, ele vai quebrar quando o Spring AI 2.0 GA sair. O RC1 lançado em 06/06/2026 consolida todas as mudanças. Aqui está o guia completo com before/after para cada breaking change do Tool Calling Overhaul.
- Detalhes
- Escrito por: Jorge Demetrio
- Categoria Pai: Linguagem de programação
- Categoria: Java
- Acessos: 81
Spring Boot 3.5 encerra suporte OSS no dia 30/06/2026. Se o seu projeto ainda está no Boot 3.x, você tem menos de 30 dias para planejar a migração. O Boot 4 exige Java 21, elimina JUnit 4 do classpath padrão, força Hibernate 7 e remove Undertow. Aqui está o roteiro completo com código before/after para cada breaking change.
- Detalhes
- Escrito por: Jorge Demetrio
- Categoria Pai: Linguagem de programação
- Categoria: Java
- Acessos: 79
Existe um jeito de escrever testes que o PO entende, o QA valida e o dev executa, tudo com o mesmo arquivo. Com Cucumber 7.34 e Spring Boot 3, o setup completo leva menos de 15 minutos. A maioria dos devs Java ainda não usa, e esse artigo vai mudar isso.
- Detalhes
- Escrito por: Jorge Demetrio
- Categoria Pai: Linguagem de programação
- Categoria: Java
- Acessos: 72
Você migrou a aplicação pro Spring Boot 4, rodou a suíte de testes inteira, deu tudo verde. Subiu em produção numa terça tranquila. Aí, três dias depois, o time de suporte abre um chamado: a API tá devolvendo HTTP 200 com payload pela metade, sem estourar exceção nenhuma, sem log de erro, sem alerta. O seu catch (IOException e) que sempre pegou os problemas de JSON parou de pegar. E ninguém te avisou.
O culpado tem nome: Jackson 3. O Spring Boot 4 trocou o serializador JSON padrão e, junto com ele, veio uma mudança silenciosa na hierarquia de exceções que derruba o tratamento de erro de quem migrou no automático. Bora entender o que mudou e corrigir isso do jeito certo, antes que o cliente descubra primeiro.
- Detalhes
- Escrito por: Jorge Demetrio
- Categoria Pai: Linguagem de programação
- Categoria: Java
-
Também disponível:
- Acessos: 76
Você atualizou pro Spring Boot 4, rodou os testes locais, deu deploy. Aí o primeiro POST em produção voltou 403. Sem stack trace, sem log de erro, sem nada útil no console. Você revisa o token JWT, mexe no CORS, confere o filtro de autenticação, e tudo parece certo. O GET funciona, mas todo método de escrita morre com 403.
A causa raiz não está no seu código. O Spring Security 7, que vem embarcado no Spring Boot 4, ligou a proteção CSRF nas suas APIs sem te avisar. Nesse artigo você vai entender por que isso acontece, como diagnosticar em dois minutos e como corrigir do jeito certo, sem sair desabilitando segurança no grito.
- Detalhes
- Escrito por: Jorge Demetrio
- Categoria Pai: Linguagem de programação
- Categoria: Java
- Acessos: 74
Existe um jeito de cortar custo de cloud, acelerar o startup e reduzir bug de concorrência ao mesmo tempo, e a maioria dos times Java ainda não montou esse argumento para o gestor. Não é uma feature isolada, é o conjunto que o Java 25 LTS entrega de uma vez. Hoje você sai com os números e o código na mão para propor a migração.
A cena é sempre a mesma. Aquela reunião de planejamento onde alguém sugere subir a versão do Java, e o gestor pergunta a coisa mais justa do mundo: "por que migrar agora, qual o retorno?". Se a sua resposta é "porque é a versão nova", você perdeu o argumento. Bora montar uma resposta que cabe num slide e se sustenta em produção.
- Detalhes
- Escrito por: Jorge Demetrio
- Categoria Pai: Linguagem de programação
- Categoria: Java
-
Também disponível:
- Acessos: 87
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.
- Detalhes
- Escrito por: Jorge Demetrio
- Categoria Pai: Linguagem de programação
- Categoria: Java
-
Também disponível:
- Acessos: 100