使用第三方工具,將JavaBean對象或者List或Set或Map對象轉成JSON

準備導入第三方jar包:

  • 》commons-beanutils-1.7.0.jar
  • 》commons-collections-3.1.jar
  • 》commons-lang-2.5.jar
  • 》commons-logging-1.1.1.jar
  • 》ezmorph-1.0.3.jar
  • 》json-lib-2.1-jdk15.jar

User.java



package com.itcast.android;

public class User {

    private Integer id;
    private String name;
    private String gener;

    public User() {

    }


    public User(Integer id, String name, String gener) {
        super();
        this.id = id;
        this.name = name;
        this.gener = gener;
    }


    public Integer getId() {
        return id;
    }

    public void setId(Integer id) {
        this.id = id;
    }

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getGener() {
        return gener;
    }

    public void setGener(String gener) {
        this.gener = gener;
    }

}

Bean2Json.java

package com.itcast.android;

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

import net.sf.json.JSONArray;

/**
 * 使用第三方工具類,將Bean轉化爲JSON文本
 * 
 * @author ZXY
 *
 */
public class Bean2Json {

    // Bean轉化JSON
    public void bean2jsion() {
        User user = new User(1, "笨笨", "男");
        // 將User對象轉化爲JSON文本
        JSONArray jsonArray = JSONArray.fromObject(user);
        // 獲取JSON文本
        String json = jsonArray.toString();
        // 輸出控制檯顯示
        System.out.println(json);
        // [{"gener":"男","id":1,"name":"笨笨"}]

    }

    // List<Bean>轉化JSON
    public void list2jsion() {
        List<User> userList = new ArrayList<User>();
        userList.add(new User(1, "張飛", "男"));
        userList.add(new User(2, "劉備", "男"));
        userList.add(new User(3, "關羽", "男"));
        JSONArray jsonArray = JSONArray.fromObject(userList);
        String json = jsonArray.toString();
        System.out.println(json);
        // [{"gener":"男","id":1,"name":"張飛"},{"gener":"男","id":2,"name":"劉備"},{"gener":"男","id":3,"name":"關羽"}]

    }

    // Map<String,Object>轉化JSON
    public void map2json() {
        List<User> userList = new ArrayList<User>();
        userList.add(new User(1, "張飛", "男"));
        userList.add(new User(2, "劉備", "男"));
        userList.add(new User(3, "關羽", "男"));
        userList.add(new User(4, "小喬", "女"));

        Map<String, Object> map = new LinkedHashMap<String, Object>();
        //存放集合的長度
        map.put("size", userList.size());
        //存放整個集合
        map.put("list", userList);
        //通過第三方工具將Map轉化爲JSon文本
        JSONArray jsonArray = JSONArray.fromObject(map);
        String json = jsonArray.toString();
        System.out.println(json);
        //[{"size":4,"list":[{"gener":"男","id":1,"name":"張飛"},{"gener":"男","id":2,"name":"劉備"},{"gener":"男","id":3,"name":"關羽"},{"gener":"女","id":4,"name":"小喬"}]}]
        //通過如下代碼將最外面[]去掉
        json=json.substring(1,json.length()-1);
        System.out.println(json);
        //{"size":4,"list":[{"gener":"男","id":1,"name":"張飛"},{"gener":"男","id":2,"name":"劉備"},{"gener":"男","id":3,"name":"關羽"},{"gener":"女","id":4,"name":"小喬"}]}

    }

    public static void main(String[] args) {

        Bean2Json test = new Bean2Json();

        test.bean2jsion();
        test.list2jsion();
        test.map2json();
    }

}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章