什么时JSON
JSON (JavaScript Object Notation) 是一种轻量级的数据交换格式。易于人阅读和编写。同时也易于机器解析和生成。JSON采用完全独立于语言的文本格式,而且很多语言都提供了JSON的支持。这样就使得JOSN成为理想的数据交换语言。
JSON的定义与访问
"key":"value" 的形式 (字符串 : 字符串).
JSON在 Java Script 中两种常用的转换方式
JSON 两种存在方式:字符串形式、对象形式
在 Java Script 中可以进行转换:
JSON.stringify( json对象 ); 此方法可以把json对象转换为json字符串
JSON.parse( json字符串 ); 此方法可把json字符串转换为json对象
JSON 在 JAVA 中使用
1、导入 gson jar 包使用
2、创建 Gson 对象 gson
javaBean 和 json 的互转
使用方法 gson.toJson( 被转换的 java 对象 ); 返回一个字符串
使用方法 gson.fromJson(String strBean,Class clazz); 返回一个clazz类型对象
list 和 json 的互转
使用方法 gson.toJson( 被转换的 List 对象 ); 返回一个字符串
使用方法 gson.fromJson(String strBean,Type type); 这里假如我们想要转为List<Person>类型的集合,那么我们如果直接传入 List 这个对象的class只能恢复是一个List类型,泛型中Person会失效。
我们需要用到 Gson jar 包中的 TypeToken 类 这个类提供了一个getType()方法
匿名内部内的方式:(推荐使用)
gson.fromJson(String strBean,new TypeToken<List<Person>>(){}.getType());
继承的方式(不推荐): 这种方法如果有多个类型就需要写多个类
首先写一个 A 类继承 TypeToken<List<Person>> 类
然后用我们 实例化 A
再次使用 gson.fromJson(String strBean,A.getType() ); 这样就可以实现返回List<Person>了
上边
map 和 json 的互转
使用方法 gson.toJson( 被转换的 map 对象 ); 返回一个字符串
使用方法 gson.fromJson(String strBean,new TypeToken<map<Person>>(){}.getType()); 返回一个map<Person>类型对象