zoukankan      html  css  js  c++  java
  • (转)JSONObject的toBean 和 fromObject

    public static void main(String[] args) {

    Map map=new HashMap();
    map.put("我","妹");
    map.put("擦","哇");
    map.put("你","呀");
    JSONObject json = JSONObject.fromObject(map);
    System.out.println(json);
    }

    輸出的結果 {"我":"妹","擦":"哇","你":"呀"}

    toBean();

    首先一个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

  • 相关阅读:
    一些PC小软件/工具/神器备份
    三角函数与反三角函数
    常用网站整理(书签整理)
    谷歌和谷歌学术镜像网站
    微擎系统jssdk系统快速签名变量
    phpexcel 导入超过26列时的解决方案
    js循环对象,(多层数组)
    CentOS 6 下无法wget https链接的解决方法
    centos6 7 yum安装mongodb 3.6
    yum except KeyboardInterrupt, e: 错误
  • 原文地址:https://www.cnblogs.com/michaelkai/p/3180101.html
Copyright © 2011-2022 走看看