關於cjson與java交互的信息

本文目錄一覽:

java中json怎麼運用?

json一般都是配合ajax一起使用的 我做做過的小例子 粘給你 你可以研究一下

js部分

//獲取卡的金額

function get_money(){

var str=document.getElementById(“pk_card_type”).value;

//alert(str);

var url = ‘/member_h.do’;

var pars = ‘method=getMoney’;

pars+=’pk_card_type=’+str;

var ajax = new Ajax.Request(

url,

{method:’post’,parameters:pars,onComplete:show_money}

);

}

//回調函數 寫入卡的金額

function show_money(dataResponse)

{

var data = eval(‘(‘ + dataResponse.responseText + ‘)’);

var price=0;

price=data.price;

var collection_fees=0;

collection_fees=data.collection_fees;

document.getElementById(“recharge”).value=price;

document.getElementById(“collection_fees”).value=collection_fees;

}

action部分

public ActionForward getMoney(ActionMapping mapping, ActionForm form,

HttpServletRequest request, HttpServletResponse response) {

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

try {

IElementaryFileService ggsv = new ElementaryFileService();

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

Card_TypeVO ctvo=new Card_TypeVO();

ctvo=ggsv.queryByPK(Card_TypeVO.class, pk_card_type);

PrintWriter out = response.getWriter();

// 這裡的數據拼裝一般是從資料庫查詢來的

JSONObject jsonObject = new JSONObject();

if(ctvo!=null){

jsonObject.put(“price”, ctvo.getCard_money());

jsonObject.put(“collection_fees”, ctvo.getCash());

}else{

jsonObject.put(“price”, 0);

jsonObject.put(“collection_fees”, 0);

}

out.print(jsonObject.toString());

out.flush();

out.close();

return null;

} catch (Exception e) {

e.printStackTrace();

return null;

}

}

Java和C++是否可以實現結合

jni可以實現c++互相調用,但是java調用的c++必須實現java的規範,但是在可視化界面中調用java估計就不行,這個屬於跨語言 RPC 。 可以用下面的:

最簡單的 HTTP + json ,即 Java 暴露基於 http 的介面

不用 http 協議,可以用 protobuf + zeromq

推薦 thrift

在 java web開發中怎麼使用json?

一、JSON建構有兩種結構:

json簡單說就是javascript中的對象和數組,所以這兩種結構就是對象和數組2種結構,通過這兩種結構可以表示各種複雜的結構

1、對象:對象在js中表示為「{}」括起來的內容,數據結構為 {key:value,key:value,…}的鍵值對的結構,在面向對象的語言中,key為對象的屬性,value為對應的屬性值,所以很容易理解,取值方法為 對象.key 獲取屬性值,這個屬性值的類型可以是 數字、字元串、數組、對象幾種。在Java中就是一種Map結構。

2、數組:數組在js中是中括弧「[]」擴起來的內容,數據結構為 [“java”,”javascript”,”vb”,…],取值方式和所有語言中一樣,使用索引獲取,欄位值的類型可以是 數字、字元串、數組、對象幾種。在Java中是一種list結構。

經過對象、數組2種結構就可以組合成複雜的數據結構了。

二、Json in Javascript

使用Json語法創建對象

var people = {“name”:”jack”,”sex”:”mail”};

可以通過這種語法創建json對象,用「{}」括起來,用「,」隔開key:value

使用Json語法創建數組

var arr =[value1,value2…];

一個包含多個people的數組 peoples = [{“name”:”jack”,”sex”:”mail”},

“name”:”lily”,”sex”:”femail”};

Json數組可以通過這種語法創建,用”[]”括起來,數組元素之間用「,」分隔開,下面是這種語法的示意圖:

在使用Json格式字元串與伺服器交互時候,可以利用Json擴展的方法將字元串轉換成一個JavaScript對象,或者將一個對象轉換成Json格式字元串。不過先要登錄下載Json2.js文件。引入該包後,js對象直接用toJSONString()裝換為字元串格式,字元串可以用parseJSON()轉換成js對象。

訪問數據

只需用點號表示法來表示數組元素。所以,要想訪問 上面peoples列表的第一個條目的名字,只需在 JavaScript 中使用下面這樣的代碼:

peoples[0].name

利用這樣的語法,可以處理任何 JSON 格式的數據,而不需要使用任何額外的 JavaScript 工具包或 API。

修改數據

正如可以用點號和方括弧訪問數據,也可以按照同樣的方式輕鬆地修改數據:

peoples[0].name = “Rachmaninov”;

在將字元串轉換為 JavaScript 對象之後,就可以像這樣修改變數中的數據。

多層JSON數據,java後台如何接收

使用標準的Json對象,如org.json.JSONObject json = new org.json.JSONObject(yourJsonString);然後通過get(keyString)逐個解析 

2. 構造一個類MyObject,根據你提出的問題,其中添加 String name,ListMyObject child, 兩個屬性,增加getter setter 方法,通過com.google.gson.Gson進行解析。步驟如下: 

String jsonStr = “{‘name’:’111′,’child’:[{‘name’:’222′,’child’:[{‘name’:’333′}]},{‘name’:’2221′}]}”; 

Gson gson = new Gson(); 

MyObject obj = gson.fromJson(jsonStr,MyObject.class);

案例

package com;

import java.util.List;

import com.google.gson.Gson;

public class MyObject {

String name;

ListMyObject child;

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

public ListMyObject getChild() {

return child;

}

public void setChild(ListMyObject child) {

this.child = child;

}

public static void main(String[] args) {

String jsonStr = “{‘name’:’111′,’child’:[{‘name’:’222′,’child’:[{‘name’:’333′}]},{‘name’:’2221′}]}”;

Gson gson = new Gson();

MyObject obj = gson.fromJson(jsonStr,MyObject.class);

System.out.println(obj.getChild().get(0).getName()); // –222

System.out.println(obj.getChild().get(1).getName()); // –222

System.out.println(obj.getChild().get(0).getChild().get(0).getName()); // –333

}

}

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());

}

}

java中如何讀取json文件,在本地有E:/a.json文件,想讀取這個json文件裡面的內容,怎樣實現

//saveJsonFile(“E:\\yindd\\slaughter.json”);

//json文件存放路徑(如:E:\a.json)

String data= ReadFile.readFile(“F:\\a.json”);

System.out.println(data);

JSONObject jsonObj = JSONObject.fromObject(data);

//得到A對象

JSONArray arrayA=jsonObj.getJSONArray(“A”);

A a = (A) JSONObject.toBean((JSONArray.fromObject(arrayA.toString()).getJSONObject(0)),A.class);

//得到B集合

JSONArray arrayB=jsonObj.getJSONArray(“B”);

ListB listB=new ArrayListB();

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

B b=(B)JSONObject.toBean((JSONArray.fromObject(arrayB.toString()).getJSONObject(i)),B.class);

listB.add(b);

}

//得到C集合

JSONArray arrayC=jsonObj.getJSONArray(“C”);

ListC listC=new ArrayListC();

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

C c=(C)JSONObject.toBean((JSONArray.fromObject(arrayC.toString()).getJSONObject(i)),C.class);

listB.add(c);

}

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

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

相關推薦

  • Java JsonPath 效率優化指南

    本篇文章將深入探討Java JsonPath的效率問題,並提供一些優化方案。 一、JsonPath 簡介 JsonPath是一個可用於從JSON數據中獲取信息的庫。它提供了一種DS…

    編程 2025-04-29
  • java client.getacsresponse 編譯報錯解決方法

    java client.getacsresponse 編譯報錯是Java編程過程中常見的錯誤,常見的原因是代碼的語法錯誤、類庫依賴問題和編譯環境的配置問題。下面將從多個方面進行分析…

    編程 2025-04-29
  • Java Bean載入過程

    Java Bean載入過程涉及到類載入器、反射機制和Java虛擬機的執行過程。在本文中,將從這三個方面詳細闡述Java Bean載入的過程。 一、類載入器 類載入器是Java虛擬機…

    編程 2025-04-29
  • Java騰訊雲音視頻對接

    本文旨在從多個方面詳細闡述Java騰訊雲音視頻對接,提供完整的代碼示例。 一、騰訊雲音視頻介紹 騰訊雲音視頻服務(Cloud Tencent Real-Time Communica…

    編程 2025-04-29
  • Java Milvus SearchParam withoutFields用法介紹

    本文將詳細介紹Java Milvus SearchParam withoutFields的相關知識和用法。 一、什麼是Java Milvus SearchParam without…

    編程 2025-04-29
  • Java 8中某一周的周一

    Java 8是Java語言中的一個版本,於2014年3月18日發布。本文將從多個方面對Java 8中某一周的周一進行詳細的闡述。 一、數組處理 Java 8新特性之一是Stream…

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

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

    編程 2025-04-29
  • VSCode為什麼無法運行Java

    解答:VSCode無法運行Java是因為默認情況下,VSCode並沒有集成Java運行環境,需要手動添加Java運行環境或安裝相關插件才能實現Java代碼的編寫、調試和運行。 一、…

    編程 2025-04-29
  • Java任務下發回滾系統的設計與實現

    本文將介紹一個Java任務下發回滾系統的設計與實現。該系統可以用於執行複雜的任務,包括可回滾的任務,及時恢復任務失敗前的狀態。系統使用Java語言進行開發,可以支持多種類型的任務。…

    編程 2025-04-29
  • Java 8 Group By 會影響排序嗎?

    是的,Java 8中的Group By會對排序產生影響。本文將從多個方面探討Group By對排序的影響。 一、Group By的概述 Group By是SQL中的一種常見操作,它…

    編程 2025-04-29

發表回復

登錄後才能評論