Java對象轉(zhuǎn)json的方法過程解析
這篇文章主要介紹了Java對象轉(zhuǎn)json的方法過程解析,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
1、 jsonlib:個人感覺最麻煩的一個需要導(dǎo)入的包也多,代碼也相對多一些。
2、Gson:google的
3、FastJson:阿里巴巴的,個人覺得這個比較好,而且據(jù)說這個也是性能最好一個。
下面就貼出三種寫法的代碼,讀者可以任選其一去使用。關(guān)于demo里面所使用的jar包,可以自行去下載。
Jsonlib:
package json;
import java.util.ArrayList;
import java.util.List;
import net.sf.json.JSONArray;
import user.User;
public class Jsonlib {
public static void main(String[] args) {
User user1 = new User();
user1.setUsername("111");
user1.setPassword("111");
User user2 = new User();
user2.setUsername("222");
user2.setPassword("222");
List<User> lists = new ArrayList<User>();
lists.add(user1);
lists.add(user2);
JSONArray fromObject1 = JSONArray.fromObject(user1);
JSONArray fromObject2 = JSONArray.fromObject(lists);
String str1 = fromObject1.toString();
String str2 = fromObject2.toString();
System.out.println(str1);
//打印結(jié)果
//[{"password":"111","username":"111"}]
System.out.println(str2);
//打印結(jié)果
//[{"password":"111","username":"111"},{"password":"222","username":"222"}]
}
}
jar:

Gson:
package json;
import java.util.ArrayList;
import java.util.List;
import com.google.gson.Gson;
import user.User;
public class Gson_a {
public static void main(String[] args) {
User user1 = new User();
user1.setUsername("111");
user1.setPassword("111");
User user2 = new User();
user2.setUsername("222");
user2.setPassword("222");
List<User> lists = new ArrayList<User>();
lists.add(user1);
lists.add(user2);
Gson gson = new Gson();
String json1 = gson.toJson(user1);
System.out.println(json1);
//打印結(jié)果
//{"username":"111","password":"111"}
String json2 = gson.toJson(lists);
System.out.println(json2);
//打印結(jié)果
//[{"username":"111","password":"111"},{"username":"222","password":"222"}]
}
}
jar:

FastJson:
package json;
import java.util.ArrayList;
import java.util.List;
import com.alibaba.fastjson.JSON;
import user.User;
public class FastJson {
public static void main(String[] args) {
User user1 = new User();
user1.setUsername("111");
user1.setPassword("111");
//1、單個對象轉(zhuǎn)換成json
String jsonString = JSON.toJSONString(user1);
System.out.println(jsonString);
//打印結(jié)果
//{"password":"111","username":"111"}
User user2 = new User();
user2.setUsername("222");
user2.setPassword("222");
List<User> lists = new ArrayList<User>();
lists.add(user1);
lists.add(user2);
String jsonString2 = JSON.toJSONString(lists);
System.out.println(jsonString2);
//打印結(jié)果
//[{"password":"111","username":"111"},{"password":"222","username":"222"}]
}
}
jar:

以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
SpringMVC異常全局捕獲與錯誤響應(yīng)的處理方法
編程式異常處理是通過在代碼中?顯式編寫異常捕獲邏輯(如?try-catch?塊)來管理異常的方式,開發(fā)者需要手動處理每一個可能拋出異常的代碼段,本文給大家介紹SpringMVC異常全局捕獲與錯誤響應(yīng)的處理方法,感興趣的朋友一起看看吧2025-03-03
java 讀取excel文件轉(zhuǎn)換成json格式的實例代碼
這篇文章主要介紹了 java 讀取excel文件轉(zhuǎn)換成json格式的實例代碼,需要的朋友可以參考下2018-04-04
Spring利用@Validated注解實現(xiàn)參數(shù)校驗詳解
這篇文章主要為大家詳細介紹了在?Spring?項目中使用?@Validated?進行參數(shù)校驗的方法和常見應(yīng)用場景,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2023-05-05
Spring中的@EnableScheduling定時任務(wù)注解
這篇文章主要介紹了Spring中的@EnableScheduling注解,@EnableScheduling是 Spring Framework 提供的一個注解,用于啟用 Spring 的定時任務(wù)功能,通過使用這個注解,可以在 Spring 應(yīng)用程序中創(chuàng)建定時任務(wù),需要的朋友可以參考下2024-01-01
Java 中 Form表單數(shù)據(jù)的兩種提交方式
本文給大家分享java中form表單數(shù)據(jù)的兩種提交方式,分別是get從制定的服務(wù)器中獲取數(shù)據(jù),pos方式提交數(shù)據(jù)給指定的服務(wù)器處理,本文給大家介紹的非常詳細,需要的朋友參考下吧2016-12-12

