一般用extjs开发传输都是用json比较多,这个将来大家也许会用到。。。

ConvertJsonUtils.java

package com.sunweb.util.jsonfactory;

import java.util.List;

import com.sunweb.util.jsonfactory.jsontools.JSONArray;
import com.sunweb.util.jsonfactory.jsontools.JSONException;
import com.sunweb.util.jsonfactory.jsontools.JSONObject;

/**
* @title 公共json数据格式转换
* @author 贺彬
*/
public class ConvertJsonUtils {

public ConvertJsonUtils() {
        super();
    }

/**
     * 功能:将泛型集合转换成分页json数据
     *
     * @param list
     *            泛型集合
     * @param countList
     *            数据集合的总行数
     * @return 分页json数据
     */
    public static String ConvertListToPageJson(List<?> list, int countList) {
        // 新建一个json数组
        JSONArray jsonArray = new JSONArray();
        // 新建一个json对象
        JSONObject jsonObject = null;
        // 遍历泛型集合
        for (Object object : list) {
            jsonObject = new JSONObject(object);
            jsonArray.put(jsonObject);
        }
        // 转换数据格式
        String json = jsonArray.toString();
        // 拼接字符串
        StringBuffer sb = new StringBuffer();
        sb.append("{\"totalCount\":");
        sb.append(countList);
        sb.append(",\"rows\":");
        sb.append(json);
        sb.append("}");
        String jsonString = sb.toString();
        return jsonString;
    }
    /**
     * 功能:将泛型集合转换成分页json数据
     *
     * @param list
     *            泛型集合
     * @param countList
     *            数据集合的总行数
     * @return 分页json数据
     */
    public static String ConvertListToPageJson(List<?> list){
        // 新建一个json数组
        JSONArray jsonArray = new JSONArray();
        // 新建一个json对象
        JSONObject jsonObject = null;
        // 遍历泛型集合
        for (Object object : list) {
            jsonObject = new JSONObject(object);
            jsonArray.put(jsonObject);
        }
        // 转换数据格式
        String json = jsonArray.toString();
        // 拼接字符串
        JSONObject jn = new JSONObject();
        try {
            jn.put("records", jsonArray);
        } catch (JSONException e) {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }
        return jn.toString();
    }

}

Test.java

package com.sunweb.util.jsonfactory;

import java.util.ArrayList;
import java.util.List;

public class Test {

/**
     * @param args
     */
    public static void main(String[] args) {
        List<Student> list = new ArrayList<Student>();  //创建一个泛型的list集合
        Student stu = null;
        for(int i=0;i<20;i++){
            stu = new Student();
            stu.setId(i);
            stu.setName("贺兵"+i);
            //模拟有20个对象的list集合
            list.add(stu);
        }
       //现在将集合转成json不分页
       String json1 = ConvertJsonUtils.ConvertListToPageJson(list);
        System.out.println(json1);
        //分页,总数20条
       String json2 = ConvertJsonUtils.ConvertListToPageJson(list, 20);
        System.out.println(json2);
    }

Student.java

package com.sunweb.util.jsonfactory;

public class Student {
    private int id;
    private String name;
    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;
    }
}
http://outofmemory.cn/code-snippet/4036/jiang-java-class-generic-set-turn-huancheng-json-object

将java类的泛型集合转换成json对象的更多相关文章

  1. 转换成json字符串,与json字符串转换成java类型都要先转换成json对象

    转换成json字符串,与json字符串转换成java类型都要先转换成json对象

  2. JSON--List集合转换成JSON对象

    转自:http://www.cnblogs.com/xmaomao/p/3184542.html 1. 简单的手动放置 键值对 到JSONObject,然后在put到JSONArray对象里 List ...

  3. Java对象转换成xml对象和Java对象转换成JSON对象

    1.把Java对象转换成JSON对象 apache提供的json-lib小工具,它可以方便的使用Java语言来创建JSON字符串.也可以把JavaBean转换成JSON字符串. json-lib的核心 ...

  4. C#中对象,字符串,dataTable、DataReader、DataSet,对象集合转换成Json字符串方法。

    C#中对象,字符串,dataTable.DataReader.DataSet,对象集合转换成Json字符串方法. public class ConvertJson { #region 私有方法 /// ...

  5. List转换成JSON对象

    List转换成JSON对象 1.准备工作 导入jar包 (1)json-lib-2.3-jdk15.jar (2)commons-beanutils-1.8.0.jar (3)commons-coll ...

  6. List转换成JSON对象报错(五)

    List转换成JSON对象 1.具体错误如下 Exception in thread "main" java.lang.NoClassDefFoundError: org/apac ...

  7. List转换成JSON对象报错(四)

    List转换成JSON对象 1.具体错误如下 Exception in thread "main" java.lang.NoClassDefFoundError: org/apac ...

  8. List转换成JSON对象报错(三)

    List转换成JSON对象 1.具体错误如下 Exception in thread "main" java.lang.NoClassDefFoundError: net/sf/e ...

  9. List转换成JSON对象报错(二)

    List转换成JSON对象 1.具体报错如下 Exception in thread "main" java.lang.NoClassDefFoundError: org/apac ...

随机推荐

  1. JAVA构造器、this、super

    构造器是为了创建一个类的实例.这个过程也可以在创建一个对象的时候用到: Platypus p1 = new Platypus(); 相反,方法的作用是为了执行java代码. 修饰符,返回值和命名的不同 ...

  2. JS完美运动框架

    这套框架实现了多物体,任意值,链式运动,多值运动,基本满足常见的需求. /* 功能:完美运动框架,可以实现多物体,任意值,链式运动,多值运动 版本:V1.0 兼容性:Chrome,FF,IE8+ (o ...

  3. 第一个Cookie应用

    Cookie应用:显示用户上次访问时间 package com.itheima.cookie; import java.io.IOException; import java.io.PrintWrit ...

  4. Unity3D 之射线检测

    这里来记录下射线检测的相关内容: 射线检测故名就是通过射线去检测是否和碰撞器产生了交集,和碰撞器与碰撞器发生交集一样,会返回一个真. 射线的用法很多:比如检测是否跳跃,通过向地面投射射线控制在地面时候 ...

  5. J2EE项目应用开发过程中的易错点

    场景一 实体类型与数据库类型不一致,在进行条件查询过程中不走索引 分析 字段值类型和数据库定义的字段类型不一致时,MySQL就会在内部做数据转化, 它的处理行为就会和我们期望的有些不一样,当我们使用整 ...

  6. spark向量、矩阵类型

    先来个普通的数组: scala> var arr=Array(1.0,2,3,4) arr: Array[Double] = Array(1.0, 2.0, 3.0, 4.0) 可以将它转换成一 ...

  7. Android线控的使用

    实现方式一:只能在程序为前台时监控 在Activity中即可监听 @Override public boolean onKeyUp(int keyCode, KeyEvent event) { Log ...

  8. golang mongodb (mgo)插入或读取文档的字段值为空(nil)问题解决

    问题描述 当使用mgo操作mongodb时,遇到数据插入正常,但是在数据库查看时只能看到objectid被插入了:读取的时候,可以查询到记录,但是读入对象时,却所有的值均为0或者空的情况. mongo ...

  9. 永久设置 NLS_DATE_FORMAT 方法

    在客户端(如WEB服务器),设置环境变量即可,如: NLS_DATE_FORMAT YYYY-MM-DD HH24:MI:SS   在程序处执行会影响后续SQL性能 ALTER SESSION SET ...

  10. OpenJudge 2786 Pell数列

    1.链接地址: http://bailian.openjudge.cn/practice/2786 2.题目: 总Time Limit: 3000ms Memory Limit: 65536kB De ...