利用 fastjson.jar 把对象解析成Json 数据

前端之家收集整理的这篇文章主要介绍了利用 fastjson.jar 把对象解析成Json 数据前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

为了直观,直接写了一个简单的 Java Demo测试一下

1.先写一个实体类

import@H_403_9@ java.io.Serializable;


public@H_403_9@ class@H_403_9@ TestClass@H_403_9@ implements@H_403_9@ Serializable@H_403_9@ {@H_403_9@

    /** * */@H_403_9@
    private@H_403_9@ static@H_403_9@ final@H_403_9@ long@H_403_9@ serialVersionUID = 9001282318017650100@H_403_9@L;

    /** * 消息编码 */@H_403_9@
    private@H_403_9@ int@H_403_9@ msgCode;

    // 用户id@H_403_9@
    private@H_403_9@ int@H_403_9@ msgUid;

    /** * 安全令牌 */@H_403_9@
    private@H_403_9@ String token;

    /** * 错误代码 **/@H_403_9@
    private@H_403_9@ String errorCode;

    private@H_403_9@ String from;

    /** * 消息内容 */@H_403_9@
    private@H_403_9@ Object msgData;


    public@H_403_9@ int@H_403_9@ getMsgCode@H_403_9@() {
        return@H_403_9@ msgCode;
    }

    public@H_403_9@ void@H_403_9@ setMsgCode@H_403_9@(int@H_403_9@ msgCode) {
        this@H_403_9@.msgCode = 50@H_403_9@;
    }

    public@H_403_9@ int@H_403_9@ getMsgUid@H_403_9@() {
        return@H_403_9@ msgUid;
    }

    public@H_403_9@ void@H_403_9@ setMsgUid@H_403_9@(int@H_403_9@ msgUid) {
        this@H_403_9@.msgUid = 50@H_403_9@;
    }

    public@H_403_9@ String getToken@H_403_9@() {
        return@H_403_9@ token;
    }

    public@H_403_9@ void@H_403_9@ setToken@H_403_9@(String token) {
        this@H_403_9@.token = "token"@H_403_9@;
    }

    public@H_403_9@ String getErrorCode@H_403_9@() {
        return@H_403_9@ errorCode;
    }

    public@H_403_9@ void@H_403_9@ setErrorCode@H_403_9@(String errorCode) {
        this@H_403_9@.errorCode = "errorCode"@H_403_9@;
    }

    public@H_403_9@ Object getMsgData@H_403_9@() {
        return@H_403_9@ msgData;
    }

    public@H_403_9@ void@H_403_9@ setMsgData@H_403_9@(Object msgData) {
        this@H_403_9@.msgData = msgData;
    }

    public@H_403_9@ String getFrom@H_403_9@() {
        return@H_403_9@ from;
    }

    public@H_403_9@ void@H_403_9@ setFrom@H_403_9@(String from) {
        this@H_403_9@.from = from;
    }

    @Override@H_403_9@
    public@H_403_9@ String toString@H_403_9@() {
        return@H_403_9@ "MessageDTO [msgCode="@H_403_9@ + msgCode + ",msgUid="@H_403_9@ + msgUid
                + ",token="@H_403_9@ + token + ",errorCode="@H_403_9@ + errorCode
                + ",msgData="@H_403_9@ + msgData + "]"@H_403_9@;
    }

}

2.再Test 中 Main方法中测试

public@H_403_9@ class@H_403_9@ test@H_403_9@ {@H_403_9@

    /** * @param@H_403_9@ args */@H_403_9@
    public@H_403_9@ static@H_403_9@ void@H_403_9@ main@H_403_9@(String[] args) {
        System.out.println(getParams(1083@H_403_9@,"android"@H_403_9@,"token"@H_403_9@,0@H_403_9@));

    }
    public@H_403_9@ static@H_403_9@ String getParams@H_403_9@(int@H_403_9@ msgcode,Object obj,String token,int@H_403_9@ uid) {
        TestClass message = new@H_403_9@ TestClass();
        message.setMsgCode(msgcode);
        message.setMsgData(obj);
        message.setToken(token);
        message.setMsgUid(uid);
        message.setFrom("0"@H_403_9@);
        return@H_403_9@ JSON.toJSONString(message);
    }

}

输入结果如下:

{"from@H_403_9@":"0"@H_403_9@@H_403_9@,"msgCode@H_403_9@":50@H_403_9@@H_403_9@,"msgData@H_403_9@":"android"@H_403_9@@H_403_9@,"msgUid@H_403_9@":50@H_403_9@@H_403_9@,"token@H_403_9@":"token"@H_403_9@@H_403_9@}

如果觉得不够直观,可在Json在线编辑器上,显示如图:

3 直接将字符转化为指定的对象

TestClass message = JSON.parSEObject@H_403_9@(str,TestClass .class@H_403_9@);@H_403_9@

4.以下几个是常用的方法

public@H_403_9@ static@H_403_9@ final@H_403_9@ Object parse@H_403_9@(String text); // 把JSON文本parse为JSONObject或者JSONArray @H_403_9@
public@H_403_9@ static@H_403_9@ final@H_403_9@ JSONObject parSEObject@H_403_9@(String text); // 把JSON文本parse成JSONObject     
public@H_403_9@ static@H_403_9@ final@H_403_9@  T parSEObject@H_403_9@(String text,Class clazz); // 把JSON文本parse为JavaBean @H_403_9@
public@H_403_9@ static@H_403_9@ final@H_403_9@ JSONArray parseArray@H_403_9@(String text); // 把JSON文本parse成JSONArray @H_403_9@
public@H_403_9@ static@H_403_9@ final@H_403_9@  List parseArray@H_403_9@(String text,Class clazz); //把JSON文本parse成JavaBean集合 @H_403_9@
public@H_403_9@ static@H_403_9@ final@H_403_9@ String toJSONString@H_403_9@(Object object); // 将JavaBean序列化为JSON文本 @H_403_9@
public@H_403_9@ static@H_403_9@ final@H_403_9@ String toJSONString@H_403_9@(Object object,boolean@H_403_9@ prettyFormat); // 将JavaBean序列化为带格式的JSON文本 @H_403_9@
public@H_403_9@ static@H_403_9@ final@H_403_9@ Object toJSON@H_403_9@(Object javaObject); //将JavaBean转换为JSONObject或者JSONArray。@H_403_9@

5.jar 包下载地址:https://github.com/alibaba/fastjson/archive/1.2.4.zip

猜你在找的Json相关文章