Uma biblioteca rápida de serialização e validação para Python que codifica e decodifica JSON, MessagePack, YAML e TOML usando anotações de tipo padrão.
google/gson
Biblioteca Java para converter objetos Java em JSON e vice-versa, inclusive objetos cujo código-fonte você não tem.
- Estrelas
- 24,238
- Forks
- 4,491
- Issues abertas
- 340
- Último commit
- há 10 dias
O que é?
Gson converte objetos Java em strings JSON por meio dos métodos simples toJson() e fromJson(), e também pode interpretar JSON e convertê-lo de volta em objetos Java equivalentes. Ao contrário de muitas alternativas, ele não exige anotações Java nas suas classes, então funciona com objetos preexistentes ou imutáveis cujo código-fonte você não pode alterar.
A biblioteca dá bastante ênfase aos Generics do Java, buscando lidar com objetos profundamente aninhados, hierarquias de herança complexas e tipos genéricos. Os desenvolvedores também podem definir representações personalizadas para objetos quando o mapeamento padrão não é adequado.
Atualmente, o Gson está em modo de manutenção: bugs existentes são corrigidos, mas é improvável que grandes recursos novos sejam adicionados. O projeto tem foco em Java; não é recomendado para apps Android de produção porque o runtime baseado em reflection entra em conflito com a redução e a ofuscação de código.
Recursos principais
- 01Converte objetos Java em JSON com toJson() e de volta com fromJson()
- 02Funciona com classes sem código-fonte disponível ou sem anotações
- 03Amplo suporte aos Generics do Java
- 04Permite definir representações personalizadas para serializar objetos
- 05Lida com hierarquias de herança complexas e objetos aninhados
Casos de uso
- Interpretar respostas JSON de APIs e convertê-las em classes de modelo Java
- Serializar objetos Java de terceiros ou imutáveis em JSON
- Persistir o estado de objetos Java em arquivos JSON
- Criar backends Java que trocam dados em JSON
Início rápido
- 1
Adicione a dependência do Gson ao seu build do Gradle
implementation 'com.google.code.gson:gson:2.14.0' - 2
Ou adicione a dependência do Gson ao pom.xml do Maven
- 3
Compile o projeto a partir do código-fonte com o Maven
mvn clean verify
Antes de usar
- O Gson está em modo de manutenção, então é improvável que novos recursos de grande porte sejam adicionados.
- O Gson não é recomendado para lidar com JSON no Android, pois a reflexão pode deixar de funcionar após a redução e a ofuscação.
- Para compilar a partir do código-fonte, é necessário o JDK 17 ou superior, e versões mais recentes do JDK não são compatíveis com a compilação.
Tópicos
Perguntas frequentes
- O que é gson?
- Biblioteca Java para converter objetos Java em JSON e vice-versa, inclusive objetos cujo código-fonte você não tem. Gson converte objetos Java em strings JSON por meio dos métodos simples toJson() e fromJson(), e também pode interpretar JSON e convertê-lo de volta em objetos Java equivalentes. Ao contrário de muitas alternativas, ele não exige anotações Java nas suas classes, então funciona com objetos preexistentes ou imutáveis cujo código-fonte você não pode alterar.
- gson é gratuito? Qual é a licença?
- gson é open source sob a licença Apache-2.0. Confira os termos da licença antes de usá-lo em produtos comerciais.
- gson ainda é mantido?
- Manutenção ativa. O último commit de gson foi em 11 de out. de 2026.
- Para que posso usar gson?
- Interpretar respostas JSON de APIs e convertê-las em classes de modelo Java Serializar objetos Java de terceiros ou imutáveis em JSON Persistir o estado de objetos Java em arquivos JSON Criar backends Java que trocam dados em JSON
- Como instalar gson?
- Adicione a dependência do Gson ao seu build do Gradle: implementation 'com.google.code.gson:gson:2.14.0' Ou adicione a dependência do Gson ao pom.xml do Maven Compile o projeto a partir do código-fonte com o Maven: mvn clean verify
- Onde consigo gson?
- O código-fonte e as instruções de instalação estão no GitHub: https://github.com/google/gson
Resumo gerado por IA a partir do README do projeto. As estatísticas do GitHub são atualizadas diariamente.
Projetos relacionados
Biblioteca C++11 header-only que permite analisar, criar, manipular e serializar JSON em C++ com uma sintaxe semelhante à da STL.
Uma codificação compacta e legível por humanos para dados JSON, criada para reduzir o uso de tokens ao enviar dados estruturados em prompts para LLMs.
Framework Java opinativo para criar aplicações e serviços Spring prontos para produção, com configuração mínima.
Framework Java fundamental para criar aplicações corporativas, com injeção de dependências, MVC e suporte de infraestrutura para todo o ecossistema Spring.
Uma biblioteca de serialização multiplataforma que permite ler dados binários diretamente, sem precisar analisá-los ou descompactá-los antes.