GSON:Google的GSON,在JSON的基础之上,强化JSON功能。
JSON & GSON 区别:
1、@SerializedName:指定该字段在序列化成 JSON 时的名称。
("w")
private int width;2、GSON美化JSON格式化.
3、自定义规则:translateName,但@SerializedName一起用时,注解会覆盖translateName。
FieldNamingStrategy customPolicy = new FieldNamingStrategy() {
    
        public String translateName(Field f) {
            return f.getName().replace("_", "");
      }
};
GsonBuilder gsonBuilder = new GsonBuilder();
gsonBuilder.setFieldNamingStrategy(customPolicy);
Gson gson = gsonBuilder.create();
UserNaming user = new UserNaming("Norman", "norman@futurestud.io", true, 26);
String usersJson = gson.toJson(user);4、transient,在JavaBean的属性前添加该关键字,在生成JSON时,省略该属性
5、支持互转:
(1)从JSON反解析成JavaBean
import com.google.gson.Gson;  
   
class TestJsonFromObject {  
  private int data1;  
  private String data2;  
}  
   
String json = "{'data1':100,'data2':'hello'}";  
Gson gson = new Gson();  
TestJsonFromObject obj = gson.fromJson(json, TestJsonFromObject.class);(2)从JavaBean反解析成JSON
class TestObjectToJson {  
  private int data1 = 100;  
  private String data2 = "hello";  
}  
   
TestObjectToJson obj = new TestObjectToJson();  
Gson gson = new Gson();  
String json = gson.toJson(obj);6、一次性为所有JSON日期字符串类型格式化日期
public void test() throws IOException {
    Gson gson = new GsonBuilder()
        .setDateFormat("yyyy-MM-dd hh:mm:ss")
        .create();
    System.out.println(gson.toJson(new Date()));
}7、对于集合类:List、Set……,GSON可以一 一对应
8、处理大JSON文件 => JSON & GSON - 读取 JSON 文件
9、待更新...










