包含creat.json的詞條

本文目錄一覽:

諮詢一下資料庫里通過SQL結構化查詢出的表數據記錄怎麼轉換為JSON格式?

import java.io.StringWriter;

import java.util.HashMap;

import java.util.List;

import java.util.Map;

import org.codehaus.jackson.JsonFactory;

import org.codehaus.jackson.JsonGenerator;

import org.codehaus.jackson.JsonParser.Feature;

import org.codehaus.jackson.map.JsonSerializer;

import org.codehaus.jackson.map.ObjectMapper;

import org.codehaus.jackson.map.SerializationConfig.Feature;

import org.codehaus.jackson.type.TypeReference;

public class JsonUtils

{

private static ObjectMapper mapper = null;

static { mapper = new ObjectMapper();

mapper.configure(SerializationConfig.Feature.FAIL_ON_EMPTY_BEANS, false);

mapper.configure(JsonParser.Feature.ALLOW_BACKSLASH_ESCAPING_ANY_CHARACTER, true);

}

public static String toJson(Object target)

{

String json = “”;

try {

StringWriter sw = new StringWriter();

JsonGenerator gen = new JsonFactory().createJsonGenerator(sw);

mapper.writeValue(gen, target);

gen.close();

json = sw.toString();

}

catch (Exception e) {

throw new UnexpectedException(“對象轉換Json字元串出錯,” + target.toString(), e);

}

return json;

}

}

json的賦值

function CreateJson(id,name) //JS 裡面是不需要參數屬性的

{

var jsonStr = {};

jsonStr.id = id;

jsonStr.name = name;

return jsonStr;

}

function UseJson()

{

var rows = []; //空JSON 數據集

for(var i=0;i變數;i++){

var id=你自己賦值;

var name=你自己賦值;

rows.push(CreateJson(id,name)); //往JSON 數據集中添加JSON 數據,原理類似 List

}

//結束後這裡得到JSON數據集信息

alert(JSON.stringify(rows )); //將JSON 轉化成string 輸出,否則顯示Object

//輸出你想要的信息

}

以上純手打!

Android 解析json問題

Android 解析json的方式為:

1、首先,搭建一個伺服器的工程:JsonProject這個項目

源代碼:

Person.java

package com.json.domain;

public class Person {

private int id;

private String name;

private String address;

public Person() {

super();

}

public Person(int id, String name, String addrss) {

super();

this.id = id;

this.name = name;

this.address = addrss;

}

public int getId() {

return id;

}

public void setId(int id) {

this.id = id;

}

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

public String getAddress() {

return address;

}

public void setAddress(String address) {

this.address = address;

}

@Override

public String toString() {

return “Person [addrss=” + address + “, id=” + id + “, name=” + name

+ “]”;

}

}

JsonService.java

package com.json.service;

import java.util.ArrayList;

import java.util.HashMap;

import java.util.List;

import java.util.Map;

import com.json.domain.Person;

public class JsonService {

public JsonService() {

}

public Person getPerson(){

Person person = new Person(1001,”jack”,”上海黃浦區”);

return person;

}

public ListPerson getListPerson(){

ListPerson list = new ArrayListPerson();

Person person1 = new Person(1001,”jack”,”上海黃浦區”);

Person person2 = new Person(1002,”rose”,”上海閔行區”);

Person person3 = new Person(1003,”mick”,”上海黃浦區”);

list.add(person1);

list.add(person2);

list.add(person3);

return list;

}

public ListString getListString(){

ListString list = new ArrayListString();

list.add(“北京”);

list.add(“上海”);

list.add(“湖南”);

return list;

}

public ListMapString,Object getListMaps(){

ListMapString,Object list = new ArrayListMapString,Object();

MapString,Object map1 = new HashMapString, Object();

MapString,Object map2 = new HashMapString, Object();

map1.put(“id”, 1001);

map1.put(“name”, “jack”);

map1.put(“address”, “北京”);

map2.put(“id”, 1001);

map2.put(“name”, “rose”);

map2.put(“address”, “上海”);

list.add(map1);

list.add(map2);

return list;

}

}

JsonServlet.java

package com.json.servlet;

import java.io.IOException;

import java.io.PrintWriter;

import javax.servlet.ServletException;

import javax.servlet.http.HttpServlet;

import javax.servlet.http.HttpServletRequest;

import javax.servlet.http.HttpServletResponse;

import com.json.service.JsonService;

import com.json.tools.JsonTools;

public class JsonServlet extends HttpServlet {

private JsonService service;

/**

* Constructor of the object.

*/

public JsonServlet() {

super();

}

/**

* Destruction of the servlet. br

*/

public void destroy() {

super.destroy(); // Just puts “destroy” string in log

// Put your code here

}

/**

* The doGet method of the servlet. br

*

* This method is called when a form has its tag value method equals to get.

*

* @param request the request send by the client to the server

* @param response the response send by the server to the client

* @throws ServletException if an error occurred

* @throws IOException if an error occurred

*/

public void doGet(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException {

this.doPost(request, response);

}

/**

* The doPost method of the servlet. br

*

* This method is called when a form has its tag value method equals to post.

*

* @param request the request send by the client to the server

* @param response the response send by the server to the client

* @throws ServletException if an error occurred

* @throws IOException if an error occurred

*/

public void doPost(HttpServletRequest request, HttpServletResponse response)

throws ServletException, IOException {

response.setContentType(“text/html;charset=utf-8”);

request.setCharacterEncoding(“utf-8”);

response.setCharacterEncoding(“utf-8”);

PrintWriter out = response.getWriter();

String jsonString = “”;

String action_flag = request.getParameter(“action_flag”);

if(action_flag.equals(“person”)){

jsonString = JsonTools.createJsonString(“person”, service.getPerson());

}else if(action_flag.equals(“persons”)){

jsonString = JsonTools.createJsonString(“persons”, service.getListPerson());

}else if(action_flag.equals(“listString”)){

jsonString = JsonTools.createJsonString(“listString”, service.getListString());

}else if(action_flag.equals(“listMap”)){

jsonString = JsonTools.createJsonString(“listMap”, service.getListMaps());

}

out.println(jsonString);

out.flush();

out.close();

}

/**

* Initialization of the servlet. br

*

* @throws ServletException if an error occurs

*/

public void init() throws ServletException {

service = new JsonService();

}

}

2、通過瀏覽器

訪問地址一:

輸出以下結果:

{“person”:{“address”:”上海黃浦區”,”id”:1001,”name”:”jack”}

訪問地址二:

輸出以下結果:

{“persons”:[{“address”:”上海黃浦區”,”id”:1001,”name”:”jack”},{“addrss”:”上海閔行區”,”id”:1002,”name”:”rose”},{“address”:”上海黃浦區”,”id”:1003,”name”:”mick”}]}

訪問地址三:

輸出以下結果:

{“persons”:[“北京”,”上海”,”湖南”]}

訪問地址四:

輸出以下結果:

{“persons”:[{“id”:1001,”address”:”北京”,”name”:”jack”},{“id”:1001,”address”:”上海”,”name”:”rose”}]}

在eclipse中,如何導入json包和使用呢?

json-lib-2.3-jdk15.jar

commons-beanutils-1.7.0.jar

commons-httpclient-3.1.jar

commons-lang-2.3.jar

commons-logging-1.0.4.jar

commons-collections-3.1.jar

ezmorph-1.0.3.jar

這些包可以從一下地方下載:

如果不關聯這些包,則會出現以下錯誤:

java.lang.NoClassDefFoundError: net/sf/ezmorph/Morpher

java.lang.NoClassDefFoundError: org/apache/commons/collections/map/ListOrderedMap

java.lang.NoClassDefFoundError: org/apache/commons/beanutils/DynaBean

java.lang.NoClassDefFoundError: org/apache/commons/codec/DecoderException

java.lang.NoClassDefFoundError: org/apache/commons/lang/exception/NestableRuntimeException

java.lang.NoClassDefFoundError: org/apache/commons/logging/LogFactory

使用的話

JSON Editor Plugin 是 Eclipse 下用來編輯 JSON 格式數據的插件,具有語法著色、文檔結構概覽、顯示格式化等功能。

如何使用java創建json對象

//將數據轉換為Json 

public static String createJsonString(String key, Object value) {  

    JSONObject jsonObject = new JSONObject();  

    jsonObject.put(key, value); 

    return jsonObject.toString();

}

Java解析json數據

一、 JSON (JavaScript Object Notation)一種簡單的數據格式,比xml更輕巧。

Json建構於兩種結構:

1、「名稱/值」對的集合(A collection of name/value pairs)。不同的語言中,它被理解為對象(object),紀錄(record),結構(struct),字典(dictionary),哈希表(hash table),有鍵列表(keyed list),或者關聯數組 (associative array)。 如:

{

「name」:」jackson」,

「age」:100

}

2、值的有序列表(An ordered list of values)。在大部分語言中,它被理解為數組(array)如:

{

「students」:

[

{「name」:」jackson」,「age」:100},

{「name」:」michael」,」age」:51}

]

}

二、java解析JSON步驟

A、伺服器端將數據轉換成json字元串

首先、伺服器端項目要導入json的jar包和json所依賴的jar包至builtPath路徑下(這些可以到JSON-lib官網下載:)

然後將數據轉為json字元串,核心函數是:

public static String createJsonString(String key, Object value)

{

JSONObject jsonObject = new JSONObject();

jsonObject.put(key, value);

return jsonObject.toString();

}

B、客戶端將json字元串轉換為相應的javaBean

1、客戶端獲取json字元串(因為android項目中已經集成了json的jar包所以這裡無需導入)

public class HttpUtil

{

public static String getJsonContent(String urlStr)

{

try

{// 獲取HttpURLConnection連接對象

URL url = new URL(urlStr);

HttpURLConnection httpConn = (HttpURLConnection) url

.openConnection();

// 設置連接屬性

httpConn.setConnectTimeout(3000);

httpConn.setDoInput(true);

httpConn.setRequestMethod(“GET”);

// 獲取相應碼

int respCode = httpConn.getResponseCode();

if (respCode == 200)

{

return ConvertStream2Json(httpConn.getInputStream());

}

}

catch (MalformedURLException e)

{

// TODO Auto-generated catch block

e.printStackTrace();

}

catch (IOException e)

{

// TODO Auto-generated catch block

e.printStackTrace();

}

return “”;

}

private static String ConvertStream2Json(InputStream inputStream)

{

String jsonStr = “”;

// ByteArrayOutputStream相當於內存輸出流

ByteArrayOutputStream out = new ByteArrayOutputStream();

byte[] buffer = new byte[1024];

int len = 0;

// 將輸入流轉移到內存輸出流中

try

{

while ((len = inputStream.read(buffer, 0, buffer.length)) != -1)

{

out.write(buffer, 0, len);

}

// 將內存流轉換為字元串

jsonStr = new String(out.toByteArray());

}

catch (IOException e)

{

// TODO Auto-generated catch block

e.printStackTrace();

}

return jsonStr;

}

}

2、獲取javaBean

public static Person getPerson(String jsonStr)

{

Person person = new Person();

try

{// 將json字元串轉換為json對象

JSONObject jsonObj = new JSONObject(jsonStr);

// 得到指定json key對象的value對象

JSONObject personObj = jsonObj.getJSONObject(“person”);

// 獲取之對象的所有屬性

person.setId(personObj.getInt(“id”));

person.setName(personObj.getString(“name”));

person.setAddress(personObj.getString(“address”));

}

catch (JSONException e)

{

// TODO Auto-generated catch block

e.printStackTrace();

}

return person;

}

public static ListPerson getPersons(String jsonStr)

{

ListPerson list = new ArrayListPerson();

JSONObject jsonObj;

try

{// 將json字元串轉換為json對象

jsonObj = new JSONObject(jsonStr);

// 得到指定json key對象的value對象

JSONArray personList = jsonObj.getJSONArray(“persons”);

// 遍歷jsonArray

for (int i = 0; i personList.length(); i++)

{

// 獲取每一個json對象

JSONObject jsonItem = personList.getJSONObject(i);

// 獲取每一個json對象的值

Person person = new Person();

person.setId(jsonItem.getInt(“id”));

person.setName(jsonItem.getString(“name”));

person.setAddress(jsonItem.getString(“address”));

list.add(person);

}

}

catch (JSONException e)

{

// TODO Auto-generated catch block

e.printStackTrace();

}

return list;

}

原創文章,作者:DWWY,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/148122.html

(0)
打賞 微信掃一掃 微信掃一掃 支付寶掃一掃 支付寶掃一掃
DWWY的頭像DWWY
上一篇 2024-11-02 13:15
下一篇 2024-11-02 13:15

相關推薦

  • JSON的MD5

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

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

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

    編程 2025-04-29
  • 如何使用Newtonsoft datatable轉Json

    Newtonsoft DataTable 是一個基於.NET的JSON框架,也是一個用於序列化和反序列化JSON的強大工具。 在本文中,我們將學習如何使用Newtonsoft Da…

    編程 2025-04-28
  • JPRC – 輕鬆創建可讀性強的 JSON API

    本文將介紹一個全新的 JSON API 框架 JPRC,通過該框架,您可以輕鬆創建可讀性強的 JSON API,提高您的項目開發效率和代碼可維護性。接下來將從以下幾個方面對 JPR…

    編程 2025-04-27
  • Python存為JSON的方法及實例

    本文將從以下多個方面對Python存為JSON做詳細的闡述。 一、JSON簡介 JSON(JavaScript Object Notation)是一種輕量級的數據交換格式,易於人閱…

    編程 2025-04-27
  • 使用Python獲取JSON並解析

    本文將介紹如何使用Python獲取JSON數據並解析相關內容。通過使用Python的第三方庫,我們可以輕鬆地處理JSON數據,包括讀取、提取和操作JSON數據。 一、獲取JSON數…

    編程 2025-04-27
  • 使用Spread 8展示JSON數據

    使用Spread 8可以方便地展示JSON數據,本文將詳細介紹如何利用Spread 8展示JSON數據。 一、Spread 8簡介 Spread 8是一款強大的電子表格軟體,可以方…

    編程 2025-04-27
  • 如何在json轉實體類時忽略大小寫

    本文將從以下幾個方面介紹如何在json轉實體類時忽略大小寫。 一、使用Gson庫實現json轉實體類忽略大小寫 Gson是Google提供的Java JSON操作庫,它提供了簡單易…

    編程 2025-04-27
  • C# 中 JSON null 不顯示的處理方法

    本文將為大家介紹在 C# 中處理 JSON null 不顯示的解決方法。 一、null 不顯示的問題 在使用 C# 進行 JSON 數據處理的時候,經常會遇到 null 值不顯示的…

    編程 2025-04-27
  • Hive解析JSON詳解

    一、JSON簡介 JSON(JavaScript Object Notation)是一種輕量級的數據交換格式,具有結構清晰、易於讀寫、便於解析等特點。它基於JavaScript的一…

    編程 2025-04-25

發表回復

登錄後才能評論