以json格式将数据从Java发送到javascript

时间:2018-07-11 15:21:18

标签: javascript java json

我有一些数据

@Override
     public String toString() {
          return
               "{" +
                    "id:" + id +
                    ", title:'" + title + '\'' +
               "}";
     }

我需要将javascript转换为JSON。数据必须返回可以在文档中显示的键和值。 我尝试使用JSON.stringify和JSON.parse方法,但是它转换为字符串。

2 个答案:

答案 0 :(得分:0)

您可以手动构建和打印JSON,但您可能希望使用SimpleJSON,Jackson 2或GSON,随着数据变得越来越复杂,它们将更适合您:

SimpleJSON:https://github.com/fangyidong/json-simpleJAR

GSON:https://github.com/google/gsonJAR

//Simple JSON
import org.json.simple.JSONObject;

//GSON
import com.google.gson.Gson;
import com.google.gson.GsonBuilder;


public class JSONExamples {

    public static void main(String[] args) {
        String id = "123";
        String title = "Very Important Record";


        //Simple JSON
        JSONObject obj = new JSONObject();
        obj.put("id", id);
        obj.put("title", title);
        System.out.println(obj);


        //GSON
        MyRecord myImportantRecord = new MyRecord(id, title);
        Gson gson = new GsonBuilder().create();
        gson.toJson(myImportantRecord, System.out);

    }

}

MyRecord.java:

public class MyRecord {
    private String id;
    private String title;
    MyRecord(String id, String title) {
        this.id=id;
        this.title=title;
    }
}

答案 1 :(得分:0)

从Java您可以收到stringified JSON,并且可以在JavaScript端使用JSON.parse()对其进行解析,以将其作为常规对象。

  1. 使用Gson将Java对象转换为JSON。

    Gson gson = new Gson();
    Staff obj = new Staff();
    //Java object to JSON, and assign to a String
    String jsonInString = gson.toJson(obj);
    
  2. JavaScript端

    var myObj = JSON.parse(this.responseText);