android开发对象转json字符串,Android进步之十四:使用jackon的ObjectMapper的writeValueAsString方法可以把java对象转化成json字符串...

如何把java对象转化成json字符串并打印出来呢?

这里就用到了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 map = new HashMap();

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,如果没有执行此操作,则需要手动添加。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值