文档章节

Gson入门

Geeyu
 Geeyu
发布于 2017/02/23 23:11
字数 209
阅读 22
收藏 0

慕课网《JSON快速入门(Java版)》笔记

  项目中用的多为JsonObjecty一类的...然而,Gson更为强大!

Gson gson = new Gson();
String user = gson.toJson(new User("xiaoming"));
//{"name":"xiaoming"}

  可以通过注解修改输出的属性名,更为安全。

class User{
	@SerializedName("NAME")
	private String name;
	...
}
//{"NAME":"xiaoming"}

  也可以通过builder构建json,添加更多功能。

GsonBuilder gsonBuilder = new GsonBuilder();

//修改输出格式
gsonBuilder.setPrettyPrinting();

//修改输出字段
gsonBuilder.setFieldNamingStrategy(new FieldNamingStrategy(){
	public String translateName(Field f){
		return f.getName() + "-123";
	}
});

Gson gson = gsonBuilder.create();

  还有一个特殊的关键字。

class User{
	//输出时json中不会包含这个字段
	private transient String ignore;
}

  Gson可以直接将数组映射到集合,也可以带日期转换,解析方法如下,和net.sf.json相同,只不过后者需要一个jsonConfig。

class User{
	private Date date;
	private List<String> list;
	...
}

Gson gson = new GsonBuilder().setDateFormat("yyyy-MM-dd").create();
User user = gson.fromJson(userJson, User.class);

© 著作权归作者所有

共有 人打赏支持
Geeyu
粉丝 2
博文 56
码字总数 30168
作品 0
昌平
你真的会用Retrofit2吗?Retrofit2完全教程

本文注目录: Retrofit入门 Retrofit注解详解 Gson与Converter RxJava与CallAdapter 自定义Converter 自定义CallAdapter 其它说明 前言 本文中的Retrofit均指代Retrofit2.0。 本文涉及到的代...

火云
2016/12/27
79
0
android Gson解析

Gson是Google提供的方便在json数据和Java对象之间转化的类库。 Gson这是使用Gson的主要类,使用它时一般先创建一个Gson实例,然后调用toJson(Object)或者from(String,Class)方法进行转换。 ...

ForingY
2016/08/02
6
0
请问一下Gson解析数据时候报的一个错,麻烦大家了

代码报错信息如下: Process: com.feifeipark.tgcw, PID: 2865 com.google.gson.JsonSyntaxException: java.lang.IllegalStateException: Expected BEGIN_ARRAY but was BOOLEAN at line 1 c......

茗香墨语
2017/09/27
36
1
Google的JSON类库 Gson开发者指南

由于 site.google.com 被墙,本人特意翻墙出去扒了分 User Guide 回来,不过是英文的。 Gson User Guide Contents 1 Authors: Inderjeet Singh, Joel Leitch 1.1 Overview 1.2 Goals for Gs......

红薯
2009/12/31
11.3K
13
使用Gson遇到的特殊字符被转码问题

今天是用gson工具的时候,发现字符串中的‘=’被替换成了unicode编程格式的‘u003d’,查看了下gson源码,发现了gson在toString的时候的有如下操作: 其中 HTMLSAFEREPLACEMENTCHARS 、REPLA...

霖_柒
2015/06/01
0
0

没有更多内容

加载失败,请刷新页面

加载更多

spring只

一、IOC(Inversion of Control)或者依赖注入(Dependency Injection) 1、底层实现原理:反射 2、三大核心接口: BeanFactory:简单容器系列,只是实现了容器最基本的功能。 ApplicationC...

狠一点
5分钟前
0
0
缓存架构SpringBoot集成Curator实现zookeeper分布式锁

一、分布式锁简介 1、什么是锁 在单机环境下,当存在多个线程可以同时改变某个共享变量时,就需要同步来实现该功能,使其线程安全。 而同步就是通过锁来实现的。锁保证了同一时刻只有一个线程...

架构师springboot
7分钟前
0
0
11《Java核心技术》之Java提供了哪些IO方式? NIO如何实现多路复用?

一、提出问题 IO 一直是软件开发中的核心部分之一,伴随着海量数据增长和分布式系统的发展,IO 扩展能力愈发重要。幸运的是,Java 平台 IO 机制经过不断完善,虽然在某些方面仍有不足,但已经...

飞鱼说编程
14分钟前
0
0
简单介绍Java 的JAR包、EAR包、WAR包区别

WAR包 WAR(Web Archive file)网络应用程序文件,是与平台无关的文件格式,它允许将许多文件组合成一个压缩文件。War专用于Web方面。大部分的JAVA WEB工程,都是打成WAR包进行发布的。 War是...

linuxprobe16
14分钟前
0
0
55:Mysql用户管理|常用sql语句|mysql数据库备份恢复

1、Mysql用户管理; 场景,为了安全,新建的站点,创建新的用户,或者给已有用户授权,对某个库或者某个表有权限; 语法: grant all on *.* to 'user'@'127.0.0.1' identified by 'password'; g...

芬野de博客
18分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部