json toBean使用

它有点类似于BeanUtils的copyProperties方法
具体的看代码,一下就明白了!
首先一个javabean对象
public class Student {

    private int id ;
    private String name;
    private int age;
   
    public int getId() {
        return id;
    }
    public void setId(int id) {
        this.id = id;
    }
    public String getName() {
        return name;
    }
    public void setName(String name) {
        this.name = name;
    }
    public int getAge() {
        return age;
    }
    public void setAge(int age) {
        this.age = age;
    }
   
    public String toString(){
        return this.id + ", " + this.name + ", " + this.age;
    }
}

然后测试toBean方法的类
import net.sf.json.JSONObject;

public class ToBeanTest {

    public static void main(String[] args) {
       
        String json = "{id:'1001',name:'张三',age:'22'}";
        Student stu = new Student();
        JSONObject obj = JSONObject.fromObject(json);
        stu = (Student)JSONObject.toBean(obj, Student.class);
        System.out.println(stu);
    }

}
输出结果为1001, 张三, 22
然后我们在修改修改
import net.sf.json.JSONObject;

public class ToBeanTest {

    public static void main(String[] args) {
       
        String json = "{id:'1001',name:'张三'}";
        Student stu = new Student();
        JSONObject obj = JSONObject.fromObject(json);
        stu = (Student)JSONObject.toBean(obj, Student.class);
        System.out.println(stu);
    }

}
把年龄给去掉age为int型,输出结果为:1001, 张三, 0
然后再做小小改动
import net.sf.json.JSONObject;

public class ToBeanTest {

    public static void main(String[] args) {
       
        String json = "{id:'1001',age:'22'}";
        Student stu = new Student();
        JSONObject obj = JSONObject.fromObject(json);
        stu = (Student)JSONObject.toBean(obj, Student.class);
        System.out.println(stu);
    }

}
把姓名给去掉name为String型,输出结果为:1001, null, 22
再改动一下:
import net.sf.json.JSONObject;

public class ToBeanTest {

    public static void main(String[] args) {
       
        String json = "{id:'1001',name:'张三',age:'nn'}";
        Student stu = new Student();
        JSONObject obj = JSONObject.fromObject(json);
        stu = (Student)JSONObject.toBean(obj, Student.class);
        System.out.println(stu);
    }

}
把age改成非整形,输出结果为:
1001, 张三, 0

再改动一下:
import net.sf.json.JSONObject;

public class ToBeanTest {

    public static void main(String[] args) {
       
        String json = "{id:'1001',name:'张三',age:'22',sex:'男'}";
        Student stu = new Student();
        JSONObject obj = JSONObject.fromObject(json);
        stu = (Student)JSONObject.toBean(obj, Student.class);
        System.out.println(stu);
    }

}
加了一个sex:'男'的一对键值,输出结果为:
1001, 张三, 22
2010-11-13 10:10:26 net.sf.json.JSONObject toBean
警告: Tried to assign property sex:java.lang.String to bean of class sky.liukai.Student



如上代码就可了解toBean方法了!

  • 5
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值