本人大四即将毕业的准程序员(JavaSE、JavaEE、android等)一枚,小项目也做过一点,于是乎一时兴起就写了一些工具。
我会在本博客中陆续发布一些平时可能会用到的工具。
代码质量可能不是很好,大家多担待!
代码或者思路有不妥之处,还希望大牛们能不吝赐教哈!
以下代码为本人原创,转载请注明:
本文转载,来自:http://www.cnblogs.com/tiantianbyconan/archive/2013/02/19/2917433.html
JOJSONBuilder工具类:一键把多个域对象数据转换为JSON格式数据,方便用于数据的传输和交互。功能类似于通过Gson来生成Json数据。
源码如下:
View Code
使用方法如下:
例如:
Student类(该类有属性name,age,isBoy,books等属性;其中books属性是一个List,存放Book对象):
1 private String name; 2 private int age; 3 private boolean isBoy; 4 private List<Book> books; 5 //并实现getter和setter方法;
Book类(该类有属性name,author,number,length,width,isBorrowed等属性):
1 private String name; 2 private String author; 3 private int number; 4 private float length; 5 private float width; 6 private boolean isBorrowed; 7 //并实现getter和setter方法;
现在有一个List<Student>类型的数据,通过以下代码把该List转换为Json:
List<Student> list = new ArrayList<Student>(); //构建几个Student对象,放入list中 //…… //完整数据版(不使用includes和excludes) JOJSONBuilder jsonBuilder = new JOJSONBuilder(list); String content = jsonBuilder.jsonBuild().toString(); //或者使用包括/排除: JOJSONBuilder jsonBuilder = new JOJSONBuilder(list, new String[]{"name", "age"}, null); jsonBuilder.jsonBuild().toString(); //或者使用方法链风格: new JOJSONBuilder().setExcludes("name", "age").jsonBuild().toString();
转换之后的Json(完整数据版(不使用includes和excludes)):
1 [ 2 { 3 'name':'hello', 4 'age':23, 5 'isBoy':true, 6 'books':[ 7 { 8 'name':'book1', 9 'author':'author1', 10 'number':123, 11 'length':23.5, 12 'width':18.0, 13 'isBorrowed':true 14 }, 15 { 16 'name':'book2', 17 'author':'author2', 18 'number':43, 19 'length':42.23, 20 'width':30.57, 21 'isBorrowed':false 22 } 23 ] 24 }, 25 26 { 27 'name':'world', 28 'age':22, 29 'isBoy':false, 30 'books':[ 31 { 32 'name':'book1', 33 'author':'author1', 34 'number':123, 35 'length':23.5, 36 'width':18.0, 37 'isBorrowed':true 38 }, 39 { 40 'name':'book3', 41 'author':'author3', 42 'number':875, 43 'length':20.59, 44 'width':15.08, 45 'isBorrowed':false 46 }, 47 { 48 'name':'book4', 49 'author':'author4', 50 'number':165, 51 'length':22.75, 52 'width':19.61, 53 'isBorrowed':true 54 } 55 ] 56 } 57 ]
本文转自天天_byconan博客园博客,原文链接:http://www.cnblogs.com/tiantianbyconan/archive/2013/02/19/2917433.html,如需转载请自行联系原作者