JSON的幾種形式、字符串在java中的寫法


問題:

1)前台獲取到的json是什么形式?json字符串形式,還是json對象形式?

答:json字符串。

2)數據傳輸過程中的json是什么形式?

答:json字符串。

3)區分:json字符串、json對象、類對象。

數據傳遞的時候是json字符串。接收后,需要將json字符串轉成json對象,再將json對象轉成類對象。

4)數據傳遞過程中,也可能是json字符串數組。

獲取到json字符串數組后,需要將其轉換為對象數組,然后遍歷這個對象數組,獲取其中的值。並可以在每一步遍歷中進行一些操作。參考如下,

         //json字符串數組
         String str="[{\"id\":\"828\",\"title\":\"容易,.......\",\"doc_content\":\"文章內容\",\"write_time\":\"2018-01-08\",\"author\":\"作者\"}," + "{\"id\":\"829\",\"title\":\"哈哈哈哈哈哈哈哈哈啊哈標題\",\"doc_content\":\"文章內容\",\"write_time\":\"2018-01-08\",\"author\":\"作者\"}]";
         //轉化為數組
         Jtt[] ss=(Jtt[])JSONArray.toArray(JSONArray.fromObject(str),Jtt.class);
         //遍歷數組,並在每次遍歷中給jtt實體賦值(jtt是我自己定義的實體)
         for(int i=0;i<ss.length;i++){
             Jtt jtt = new Jtt();
             jtt.setId(ss[i].getId());
             jtt.setTitle(ss[i].getTitle());
             jtt.setAuthor(ss[i].getAuthor());
             System.out.println(jtt);
             jtt=null;//將不用的引用指向null,等着被回收
         }

*注意:

1)字符串數組在java中的寫法;

2)前台獲取到的json字符串,到了后端直接轉化為對象(本例中是:json字符串數組,及將json字符串數組轉換成對象數組);

3)new后,需要將不用的引用設為null。防止內存溢出;

4)直接在for循環中new對象、在for循環中指為null;

5)json字符串數組轉化為對象數組時,JSONArray需要導包import net.sf.json.JSONArray; 相應依賴如下,

<dependency>
<groupId>net.sf.json-lib</groupId>
<artifactId>json-lib</artifactId>
<version>2.4</version>
<classifier>jdk15</classifier>
</dependency>

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM