将java类的泛型集合转换成json对象
一般用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对象相关推荐
- java list 转json对象_JSON--List集合转换成JSON对象
1. 简单的手动放置 键值对 到JSONObject,然后在put到JSONArray对象里 List al =articleMng.find(f); System.out.println(al.si ...
- java 泛型集合 json_将泛型集合转换成分页json数据
[java]代码库package com.sunweb.util.jsonfactory; import java.util.List; import com.sunweb.util.jsonfact ...
- json字符串转换成json对象,json对象转换成字符串,值转换成字符串,字符串转成值...
json字符串转换成json对象,json对象转换成字符串,值转换成字符串,字符串转成值 原文:json字符串转换成json对象,json对象转换成字符串,值转换成字符串,字符串转成值 主要内容: 一 ...
- json字符串转换成json对象
Json字符与Json对象的相互转换方式有很多,接下来将为大家一一介绍下,感兴趣的朋友可以参考下哈,希望可以帮助到你 1>jQuery插件支持的转换方式: 代码如下: $.parseJSON( ...
- 利用viewbag把数据对象传到前端并转换成json对象,及解决json字符串被转义问题
利用viewbag把数据对象传到前端并转换成json对象,及解决json字符串被转义问题 参考文章: (1)利用viewbag把数据对象传到前端并转换成json对象,及解决json字符串被转义问题 ( ...
- Java对象转换成JSON对象/JSON对象转换成JSON字符串/JSON字符串转换成JS对象
文章目录 后端部分 前端部分 后端部分 Option op = new Option("海淀","hd");//java对象转换json对象 JSONObjec ...
- JAVA:将CSV文件转换成JSON
需求 将从数据库导出的csv文件以指定对应的key转换成json. 思路 使用openCSV读取csv文件. 给定一个String数组,保存json的keys. 遍历csv的每行数组,遍历keys和一 ...
- 字符串转换成json对象的方式
前言 使用ajax的开发项目过程中,经常需要将json格式的字符串返回到前端,前端解析成js对象(JSON ). 欲将以下字符串转为json对象格式: var str = '{name:"j ...
- 从数据库查询出来的数据集合转换成 json 类型
2019独角兽企业重金招聘Python工程师标准>>> java ---------------------------------------------------------- ...
- List集合转换成Json字符串
前言 进行转换我们使用alibaba的json jar:com.alibaba.fastjson.jar 1.导入依赖或者直接导入jar <dependency><groupId&g ...
最新文章
- HDU 2149 Public Sale (博弈)
- 【 Notes 】RFID Preliminary Introduction
- C语言字符串转换为整数(附完整源码)
- PAT_B_1050_C++(20分)
- arcgis批量处理nc文件_气象数据处理——nc文件
- 机器学习前的热身(必备)
- Tree Xor(未完全搞定)
- php符号 set,PHP 符号大全
- 怎么把打开方式改回计算机程序,电脑打开方式改变了,怎么还原
- 保时捷服务器连接不到车辆信息,检修保时捷老款卡宴无法启动故障
- ASP.NET Core学习——7
- 11 java基础之继承:区分子类方法中变量的三种变量
- 多层感知机BP算法推导
- 安信可A9G二次开发的准备工作
- 【贪玩巴斯】传感器与检测技术 (一)「金属传感器三大重要传感器——电感、电容与振弦式」2021-09-28
- C语言中用零作为终止标记,求出一批非零整数中的偶数.奇数的平均值,用零作为终止标记的程序...
- Lintcode 1667.石头
- 报错解决——RuntimeError: The size of tensor a (4) must match the size of tensor b (3) at non-singleton
- 拜读阮一峰JavaScript教程笔记
- 《软件学报》《计算机学报》《计算机研究与发展》为计算机类三大权威刊物
热门文章
- poj[2230]Watchcow 深搜 欧拉回路
- Redis(RedisTemplate)使用hash哈希
- html上传图片(进度条变化)、音乐
- javaee--学生成绩录入与显示--Struts2标签的使用
- java.lang.IllegalArgumentException: No enum constant org.apache.ws.commons.schema.XmlSchemaForm.
- tomcat无法正常shutdown
- 【网络流24题】分配问题 最小最大费用最大流
- 认识JQuery的三天--看视频得到的一些小知识点
- arcserver开发小结(三)
- Git Bash使用详细教程