Android进步之十四:使用jackon的ObjectMapper的writeValueAsString方法可以把java对象转化成json字符串
2015-06-05 09:40
417 查看
如何把java对象转化成json字符串并打印出来呢?
这里就用到了jackon的jar包,使用writeValuesAsString的方法就可以把对角转化成json字符串。
下面通过一个demo,来仔细体会下如何去转化!
1:先建一个javaBean。
2:在MainActivity中,对其进行赋值和转化操作,并打印出来。
这里在lib下拷进了一个jar包,jackson-all-1.7.6.jar。把jar拷进去后,会自动Build path,如果没有执行此操作,则需要手动添加。
这里就用到了jackon的jar包,使用writeValuesAsString的方法就可以把对角转化成json字符串。
下面通过一个demo,来仔细体会下如何去转化!
1:先建一个javaBean。
package com.sino.objectmapperdemo; public class BaseObject { private String userName; private String userCode; private double weight; private int height; private boolean sex; private String[] array; private BaseObject innerBaseObject; public String getUserName() { return userName; } public void setUserName(String userName) { this.userName = userName; } public String getUserCode() { return userCode; } public void setUserCode(String userCode) { this.userCode = userCode; } public double getWeight() { return weight; } public void setWeight(double weight) { this.weight = weight; } public int getHeight() { return height; } public void setHeight(int height) { this.height = height; } public boolean isSex() { return sex; } public void setSex(boolean sex) { this.sex = sex; } public String[] getArray() { return array; } public void setArray(String[] array) { this.array = array; } public BaseObject getInnerBaseObject(){ return innerBaseObject; } public void setInnerBaseObject(BaseObject innerBaseObject){ this.innerBaseObject = innerBaseObject; } }
2:在MainActivity中,对其进行赋值和转化操作,并打印出来。
package com.sino.objectmapperdemo; import java.io.IOException; import java.util.ArrayList; import java.util.HashMap; import java.util.Map; import org.codehaus.jackson.JsonGenerationException; import org.codehaus.jackson.map.JsonMappingException; import org.codehaus.jackson.map.ObjectMapper; import android.os.Bundle; import android.app.Activity; import android.view.Menu; /** * 使用jackon的ObjectMapper的writeValueAsString方法可以把java对象转化成json字符串 * 输出的结果是:{"array":["80","90","95"],"height":170,"innerBaseObject":{"array":["65","68","75"], * "height":171,"innerBaseObject":null,"userCode":"2号","userName":"李四","weight":75.5,"sex":true}, * "userCode":"1号","userName":"张三","weight":65.5,"sex":true} * */ public class MainActivity extends Activity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); try { ObjectMapper objectMapper = new ObjectMapper(); // ArrayList list = new ArrayList(); // Map<String,Object> map = new HashMap<String,Object>(); BaseObject object1 = new BaseObject(); object1.setUserName("张三"); object1.setUserCode("1号"); object1.setWeight(65.5); object1.setHeight(170); object1.setSex(true); String[] score={"80","90","95"}; object1.setArray(score); BaseObject object2=new BaseObject(); object2.setUserName("李四"); object2.setUserCode("2号"); object2.setWeight(75.5); object2.setHeight(171); object2.setSex(true); score=new String[3]; score[0]="65"; score[1]="68"; score[2]="75"; object2.setArray(score); // object2成为object1的内部类 object1.setInnerBaseObject(object2); // list.add(object1); // map.put("baseObject", list); // 把对象转化成json字符串 String json = objectMapper.writeValueAsString(object1); System.out.println(json); } catch (JsonGenerationException e) { e.printStackTrace(); } catch (JsonMappingException e) { e.printStackTrace(); } catch (IOException e) { e.printStackTrace(); } } }
这里在lib下拷进了一个jar包,jackson-all-1.7.6.jar。把jar拷进去后,会自动Build path,如果没有执行此操作,则需要手动添加。
相关文章推荐
- 轻松学习之 Objective-C消息转发 | 干货
- 学习Objective-C 高效编程
- Objectivie-C 消息转发及类型编码备忘
- [iOS] objc_setAssociatedObject objc_getAssociatedObject 简单明了的一个理解
- objective-c block 旧版详解
- 第三方登录、动态的加载提示和点击效果、属性动画ObjectAnimator心得
- JAVASE学习笔记:第六章 常用类Lang包之Object类、String类
- object-c 框架之常用结构体
- 为什么object.onkeyup=function(){}函数无法执行?
- Delphi 中的 procedure of object
- [ios]object-c math.h里的数学计算公式介绍
- Objective -C内存管理
- Xcode6中进行Objective-C现代化的工具
- The official raywenderlich.com Objective-C style guide.
- objective-c语法小结
- IE ActiveObject
- XML,Object,Json转换之浅析Xstream的使用
- Hobject 与 OpenCV IplImage 和 Mat 的相互转换
- 引用类型 - object
- 轻松学习之 Objective-C消息转发