json 、map、bean互相转换

简单的json转换map,转换为bean,以及map和bean转换为json格式


互相转换代码如下:
package com.study.test.collection;


import java.util.HashMap;
import java.util.Iterator;


import net.sf.json.JSONObject;


public class JsonToMapTest {


/**
* @param args
*/
public static void main(String[] args) {
String str="{\"name\":\"晓晓\",\"sex\":\"女\",\"age\":\"26\",\"hobby\":\"dacing\"}";
HashMap<String, String> retMmap=toMap(str);
showMap(retMmap);
mapToJson(retMmap);
String userStr="{'stuId':'123','stuName':'晓梅','stuSex':'女','englishSocre':'78','mathSocre':'95','javaSocre':'88','structureSocre':'82','totalSocre':'340'}";
SimpleUsr user=toJavaBean(userStr);
showSimpleUsr(user);
beanToJson(user);
}
//map转换为json
public static void mapToJson(HashMap<String, String> map){
JSONObject object=JSONObject.fromObject(map);
System.out.println("map转json:"+object);
}
//bean转json
public static void beanToJson(SimpleUsr usr){
JSONObject object=JSONObject.fromObject(usr);
System.out.println("bean转json:"+object);
}
public static void showSimpleUsr(SimpleUsr user){
System.out.println("stuId:"+user.getStuId()+"  stuName:"+user.getStuName()+"  stuSex:"+user.getStuSex()+"  englishSocre:"+user.getEnglishSocre());
}
//json转换为jaaveBean
private static SimpleUsr toJavaBean(Object object ){
JSONObject jsObject=JSONObject.fromObject(object);
SimpleUsr usr= (SimpleUsr) JSONObject.toBean(jsObject,SimpleUsr.class);
return usr;
}
//json转换为map
private static HashMap<String, String> toMap(Object object){
HashMap<String,String> map=new HashMap<String, String>();
JSONObject jsObject=JSONObject.fromObject(object);
Iterator<?> it =jsObject.keys();
while(it.hasNext()){
String key=(String) it.next();
String value=(String) jsObject.get(key);
map.put(key, value);
}
return map;
}
public static void showMap(HashMap<String, String> map){
Iterator<String> it=map.keySet().iterator();
while(it.hasNext()){
String key=it.next();
String value=map.get(key);
System.out.print(key+":"+value+"  ");
}
System.out.println();
}
}




javabean类:
public class SimpleUsr {
private int stuId;
private String stuName;
private String stuSex;
private String englishSocre;
private String mathSocre;
private String javaSocre;
private String structureSocre;
private String totalSocre;
.....//set() get()方法
}


注:需要使用jar包地址:http://download.csdn.net/detail/u011592279/9779672

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值