加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

关于Flex+json+Java的整合开发【连载二】- Java处理Json数据

发布时间:2020-12-15 01:14:05 所属栏目:百科 来源:网络整理
导读:由于系统中是用Json传输数据的,我觉得在这里有必要把Java和Flex处理Json数据分别介绍一下,今天我们先介绍Java处理Json数据。java里面已经有开源包实现了把一个Java对象转换为JSon对象, 它就是 http://www.json.org/java/,各位读者可以在这个网站上面去下

由于系统中是用Json传输数据的,我觉得在这里有必要把Java和Flex处理Json数据分别介绍一下,今天我们先介绍Java处理Json数据。java里面已经有开源包实现了把一个Java对象转换为JSon对象, 它就是 http://www.json.org/java/,各位读者可以在这个网站上面去下载jar包。首先创建一个自己的public的class,需要转换的类必须是public的,如果不是public的,这里转换不成功,我在写这篇文章的时候就遇到了这样的问题,百度了半天才解决,但是具体原因是什么,我没有深究,个人估计大概是非public的类在进行反射的时候有问题。

相关包的介绍:请大家在下载包的时候,一定要注意包的版本

下载地址:点击打开链接

MyBeanProperty.java

package com.jack.zhang.json;
/**
 * @author Jack Zhang
 * @version vb1.0
 * @Email virgoboy2004@163.com
 * @Date 2012-4-15
 */
public class MyBeanProperty
{
    private String code = "code";

    public String getCode()
    {
        return code;
    }

    public void setCode(String code)
    {
        this.code = code;
    }
    
}


MyBean.java

package com.jack.zhang.json;

import net.sf.json.JSONFunction;

public class MyBean
{
??? private String name = "json";
??? private MyBeanProperty myBeanProperty = new MyBeanProperty();
??? private int pojoId = 1;
??? private char[] options = new char[] { 'a','f' };
??? private String func1 = "function(i){ return this.options[i]; }";
??? private JSONFunction func2 = new JSONFunction(
??????? new String[] { "i" },??????? "return this.options[i];");

??? public String getName()
??? {
??????? return name;
??? }

??? public void setName(String name)
??? {
??????? this.name = name;
??? }

??? public int getPojoId()
??? {
??????? return pojoId;
??? }

??? public void setPojoId(int pojoId)
??? {
??????? this.pojoId = pojoId;
??? }

??? public char[] getOptions()
??? {
??????? return options;
??? }

??? public void setOptions(char[] options)
??? {
??????? this.options = options;
??? }

??? public String getFunc1()
??? {
??????? return func1;
??? }

??? public void setFunc1(String func1)
??? {
??????? this.func1 = func1;
??? }

??? public JSONFunction getFunc2()
??? {
??????? return func2;
??? }

??? public void setFunc2(JSONFunction func2)
??? {
??????? this.func2 = func2;
??? }

??? public MyBeanProperty getMyBeanProperty()
??? {
??????? return myBeanProperty;
??? }

??? public void setMyBeanProperty(MyBeanProperty myBeanProperty)
??? {
??????? this.myBeanProperty = myBeanProperty;
??? }
}

Test.java

package com.jack.zhang.json;

import net.sf.json.JSONObject;

/**
 * @author Jack Zhang
 * @version vb1.0
 * @Email virgoboy2004@163.com
 * @Date 2012-4-15
 */
public class Test
{
    public static void main(String[] args)
    {
        MyBean myBean = new MyBean();
        JSONObject jsonObject = JSONObject.fromObject(myBean);
        System.err.println(jsonObject);
    }

}


输出:

{"func1":function(i){ return this.options[i]; },"func2":function(i){ return this.options[i]; },"myBeanProperty":{"code":"code"},"name":"json","options":["a","f"],"pojoId":1}

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读