关于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} (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |