JAVA中使用JSON

参考:http://www.iteye.com/topic/295083
http://topic.csdn.net/u/20071102/08/7599ac02-830d-4bf3-b799-c30dc0f4509b.html

使用json-lib的程序jar包下载地址:
http://json-lib.sourceforge.net/


在myeclipse 6.5 下新建项目webs如图:

注意各个jar包必不可少,否则报错^_^
JsonTest.java代码如下:

package com.shiryu;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;

import net.sf.json.JSONArray;
import net.sf.json.JSONObject;

public class JsonTest {

@SuppressWarnings("unchecked")
public static void main(String args[]){

//list集合转换为json代码
List list = new ArrayList();
list.add("girl");
list.add("boy");

JSONArray ja = JSONArray.fromObject(list);
System.out.println(ja);

// Map集合转换成json代码
Map map = new HashMap();
map.put("name", "kava");
map.put("bool", Boolean.TRUE);
map.put("int", new Integer(1));
map.put("array", new String[]{"a","b"});
map.put("func", "function(){return 3;}");

JSONObject jo = JSONObject.fromObject(map);
System.out.println(jo);

//Bean转换成json代码
JSONObject jsonBean = JSONObject.fromObject(new UserBean("kava","shanghai","88765687"));
System.out.println(jsonBean);

//一般数据转换为json代码
JSONArray ja2 = JSONArray.fromObject("['json','shiryu','kava']");
System.out.println(ja2);

//一组beans转换为json代码
List list2 = new ArrayList();
UserBean u1 = new UserBean("shiryu","shanghai","6666");
UserBean u2 = new UserBean("tina","guangzhou","5587");

list2.add(u1);
list2.add(u2);
JSONArray ja3 = JSONArray.fromObject(list2);
System.out.println(ja3);
}
}

UserBean.java代码如下:
package com.shiryu;

public class UserBean {
private String username;
private String city;
private String tel;

public UserBean() {
}

public UserBean(String username,String city,String tel) {
this.username=username;
this.city = city;
this.tel = tel;
}

public String getUsername() {
return username;
}

public void setUsername(String username) {
this.username = username;
}

public String getCity() {
return city;
}

public void setCity(String city) {
this.city = city;
}

public String getTel() {
return tel;
}

public void setTel(String tel) {
this.tel = tel;
}

}

最后控制台结果如下:

["girl","boy"]
{"func":function(){return 3;},"int":1,"bool":true,"name":"kava","array":["a","b"]}
{"city":"shanghai","tel":"88765687","username":"kava"}
["json","shiryu","kava"]
[{"city":"shanghai","tel":"6666","username":"shiryu"},{"city":"guangzhou","tel":"5587","username":"tina"}]

也可将json数据转为java数据
StringToJson.java
package com.shiryu;

import net.sf.json.JSONObject;

public class StringToJson {
public static void main(String args[]){
String json = "{name=\"kava\",bool:true,int:1,double:2.2,func:function(a){return a;},array:[1,2]}";

//JSONObject.fromString(json)是另一种方式
JSONObject jsonObject = JSONObject.fromObject(json);
Object bean = JSONObject.toBean(jsonObject);
String name = jsonObject.getString("name");

System.out.print(name+"--"+bean.toString());
}
}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值