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

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

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

1.先写一个实体类

import java.io.Serializable;


public class TestClass implements Serializable {

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

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

    // 用户id
    private int msgUid;

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

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

    private String from;

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


    public int getMsgCode() {
        return msgCode;
    }

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

    public int getMsgUid() {
        return msgUid;
    }

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

    public String getToken() {
        return token;
    }

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

    public String getErrorCode() {
        return errorCode;
    }

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

    public Object getMsgData() {
        return msgData;
    }

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

    public String getFrom() {
        return from;
    }

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

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

}

2.再Test 中 Main方法中测试

public class test {

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

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

}

输入结果如下:

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

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

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

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

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

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

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

猜你在找的Json相关文章