jsonobject對象轉java對象,json字符串轉jsonobject對象

本文目錄一覽:

json數組轉java對象怎麼轉?

1、需要json的相關jar包

2、設置json格式字符串:

String str=”{\”student\”:[{\”name\”:\”leilei\”,\”age\”:23},{\”name\”:\”leilei02\”,\”age\”:23}]}”;

3、建立相應的類:

public class StudentList {

ListStudent student;

public ListStudent getStudent() {

return student;

}

public void setStudent(ListStudent student) {

this.student = student;

}

}

public class Student {

private String name;

private int age;

//private StudentClass studentClass;

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

public int getAge() {

return age;

}

public void setAge(int age) {

this.age = age;

}

}

4、測試程序

import java.util.List;

import org.codehaus.jackson.map.ObjectMapper;

public class JsonToJavaBean {

public static void main(String[] args) {

String str=”{\”student\”:[{\”name\”:\”leilei\”,\”age\”:23},{\”name\”:\”leilei02\”,\”age\”:23}]}”;

Student stu = null;

ListStudent list = null;

try {

ObjectMapper objectMapper=new ObjectMapper();

StudentList studentList=objectMapper.readValue(str, StudentList.class);

list=studentList.getStudent();

} catch (Exception e) {

// TODO Auto-generated catch block

e.printStackTrace();

}

for(Student s:list){

System.out.println(s.getName());

}

}

json字符串怎麼轉換為java對象

您好,鑒於此問題,我將提供您如下的解決方案:

1、首先,加入如下 jar 文件到工程中:

      

2、編寫 java 代碼,進行json 數據的轉換

     

3、控制台輸出結果如下所示:

{“age”:90,”houses”:[],”id”:1,”name”:”liNing”}

User [age=90, houses=[], id=1, name=liiNing]

json數組轉java對象怎麼轉

有兩種方法實現:

(1)直接轉換:

創建JSONArray對象、JSONObject對象,通過put方法將其數據以鍵值對的形式填充,如例:

//假如有一個Java實體類Person,包括以下屬性:phone、sex、married、address。

ArrayListPerson persons = new ArrayListPerson();

for (int i = 0; i 3; i++) {

persons.add(new Person(“138******67”, “女”, true, “北京朝陽區”));//填充Java實體類集合

}

JSONArray array = new JSONArray();// Json格式的數組形式

JSONObject obj;//json格式的單個對象形式

for (int i = 0; i persons.size(); i++) {

obj = new JSONObject();

//依次填充每一個Java實體對象

try {

obj.put(“phone”, persons.get(i).getPhone());//json通過put方式以key-value形式填充

obj.put(“sex”, persons.get(i).getSex());

obj.put(“married”, persons.get(i).getMarried());

obj.put(“address”, persons.get(i).getAddress());

array.put(obj);//將JSONObject添加入JSONArray

} catch (JSONException e) {

e.printStackTrace();

}

}

(2)通過GSON工具實現:

只需要創建GSON對象,通過toJson方法轉換即可。如例:

//模擬Java數據

Person person = new Person(“敏敏”, 23, “女”, “北京市海淀區”);

//創建GSON對象

Gson gson = new Gson();

//調用toJson方法即可轉換為字符串的json格式

String json = gson.toJson(person);

JSON轉為java對象

開始看網上關於json的例子程序段,實驗了一把發現結果和網上例子程序的結果不一致,後來發現使用json需要導入的jar包不全,只導入json-lib-2.2.2-jdk15.jar ,還需以下幾個包:commons-beanutils-1.7.0.jarcommons-collections-3.2.jarcommons-lang.jarcommons-logging-1.1.jarezmorph-1.0.4.jar這時在測試得到了想要的結果Question q2 = new Question();q2.setId(2);q2.setDescription(“descrsssss”);q2.setPointInfo(“pointkkkk”);q2.setType(3);Question q1 = new Question();q1.setId(1);q1.setDescription(“descrsssss”);q1.setPointInfo(“pointkkkk”);q1.setType(3);JSONObject jsonObject = new JSONObject().fromObject(q2);System.out.println(jsonObject);List list = new ArrayList();list.add(q1);list.add(q2);JSONArray jsonArr= JSONArray.fromObject(list);System.out.println(jsonArr);輸出:{“description”:”descrsssss”,”id”:2,”pointInfo”:”pointkkkk”,”type”:3}[{“description”:”descrsssss”,”id”:1,”pointInfo”:”pointkkkk”,”type”:3},{“description”:”descrsssss”,”id”:2,”pointInfo”:”pointkkkk”,”type”:3}]頁面$.post(“showQuestions?type=”+type,null,callbackShowQuestions,”json”);這時在回調函數的參數data獲得的就是json轉換後的js對象數組,以下標方式便可訪問數組裡的相應對象信息。

怎麼將json對象轉換成一個java對象

public static void jsonStrToJava(){

//定義兩種不同格式的字符串

String objectStr=”{\”name\”:\”JSON\”,\”age\”:\”24\”,\”address\”:\”北京市西城區\”}”;

String arrayStr=”[{\”name\”:\”JSON\”,\”age\”:\”24\”,\”address\”:\”北京市西城區\”}]”;

//1、使用JSONObject

JSONObject jsonObject=JSONObject.fromObject(objectStr);

Student stu=(Student)JSONObject.toBean(jsonObject, Student.class);

//2、使用JSONArray

JSONArray jsonArray=JSONArray.fromObject(arrayStr);

//獲得jsonArray的第一個元素

Object o=jsonArray.get(0);

JSONObject jsonObject2=JSONObject.fromObject(o);

Student stu2=(Student)JSONObject.toBean(jsonObject2, Student.class);

System.out.println(“stu:”+stu);

System.out.println(“stu2:”+stu2);

}

原創文章,作者:小藍,如若轉載,請註明出處:https://www.506064.com/zh-hk/n/196547.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
小藍的頭像小藍
上一篇 2024-12-03 09:57
下一篇 2024-12-03 10:10

相關推薦

  • Python字符串寬度不限制怎麼打代碼

    本文將為大家詳細介紹Python字符串寬度不限制時如何打代碼的幾個方面。 一、保持代碼風格的統一 在Python字符串寬度不限制的情況下,我們可以寫出很長很長的一行代碼。但是,為了…

    編程 2025-04-29
  • Python中將字符串轉化為浮點數

    本文將介紹在Python中將字符串轉化為浮點數的常用方法。在介紹方法之前,我們先來思考一下這個問題應該如何解決。 一、eval函數 在Python中,最簡單、最常用的將字符串轉化為…

    編程 2025-04-29
  • Java判斷字符串是否存在多個

    本文將從以下幾個方面詳細闡述如何使用Java判斷一個字符串中是否存在多個指定字符: 一、字符串遍歷 字符串是Java編程中非常重要的一種數據類型。要判斷字符串中是否存在多個指定字符…

    編程 2025-04-29
  • Python學習筆記:去除字符串最後一個字符的方法

    本文將從多個方面詳細闡述如何通過Python去除字符串最後一個字符,包括使用切片、pop()、刪除、替換等方法來實現。 一、字符串切片 在Python中,可以通過字符串切片的方式來…

    編程 2025-04-29
  • JSON的MD5

    在Web開發過程中,JSON(JavaScript Object Notation)是最常用的數據格式之一。MD5(Message-Digest Algorithm 5)是一種常用…

    編程 2025-04-29
  • 面向對象編程、類和對象

    面向對象編程(Object-Oriented Programming, OOP)是一種編程方法,它將現實世界中的事物抽象為對象(Object),對象的屬性和方法被封裝成類(Clas…

    編程 2025-04-29
  • 使用Java將JSON寫入HDFS

    本篇文章將從以下幾個方面詳細闡述Java將JSON寫入HDFS的方法: 一、HDFS簡介 首先,先來了解一下Hadoop分佈式文件系統(HDFS)。HDFS是一個可擴展性高的分佈式…

    編程 2025-04-29
  • Python如何將字符串1234變成數字1234

    Python作為一種廣泛使用的編程語言,對於數字和字符串的處理提供了很多便捷的方式。如何將字符串「1234」轉化成數字「1234」呢?下面將從多個方面詳細闡述Python如何將字符…

    編程 2025-04-29
  • Python int轉二進制字符串

    本文將從以下幾個方面對Python中將int類型轉換為二進制字符串進行詳細闡述: 一、int類型和二進制字符串的定義 在Python中,int類型表示整數,二進制字符串則是由0和1…

    編程 2025-04-29
  • 用title和capitalize美觀處理Python字符串

    在Python中,字符串是最常用的數據類型之一。對字符串的美觀處理是我們在實際開發中經常需要的任務之一。Python內置了一些方法,如title和capitalize,可以幫助我們…

    編程 2025-04-28

發表回復

登錄後才能評論