怎么把数据库里面的数据取出来转换成json格式。急!!!
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了怎么把数据库里面的数据取出来转换成json格式。急!!!相关的知识,希望对你有一定的参考价值。
参考技术A 可以使用fastjson解析器:import com.alibaba.fastjson.JSON;
public static void testStrToJSONObject()
Map<String,Object> m2 = new HashMap<String, Object>();
m2.put("p1", "v1");
m2.put("p2", "v2");
m2.put("p3", "v3");
m2.put("p4", "v4");
m2.put("p5", "v5");
System.out.println(JSON.toJSON(m2));
.net 数据表转换成json
比如我通过查询在ASHX里面获得了一个表叫DT,怎么把这个DT转换成JSON类型的数据传给前台页面?然后前台js怎么使用这个传过去的json数据呢?就获得这个数据的第一条记录就好。。
Dt转换成Json一般可以通过以下的步骤来方便的转换首先对应表做一个实体类,该类标记可序列化
首先查询数据库获取表数据(比如获取了一条)
编译该条记录实例化表实体类并根据字段名赋值
直接按照json格式序列化该实体类就获取了Json格式的数据(如果需要多条数据只需要一个List,然后序列化那个List就可以了)
下面这个我以前做的东西,核心就是将DT转换成实体类集合
/// <summary>
/// DataTable转换为List<Model>的通用类
/// </summary>
/// <typeparam name="T"><Model类型/typeparam>
public static IList<T> ConvertToModel(DataTable dt)
// 定义集合
IList<T> ts = new List<T>();
// 获得此模型的类型
Type type = typeof(T);
string tempName = "";
foreach (DataRow dr in dt.Rows)
T t = new T();
// 获得此模型的公共属性
PropertyInfo[] propertys = t.GetType().GetProperties();
foreach (PropertyInfo pi in propertys)
tempName = pi.Name;
//string objType = pi.PropertyType.Name;
// 检查DataTable是否包含此列
if (dt.Columns.Contains(tempName))
// 判断此属性是否有Setter
if (!pi.CanWrite) continue;
object value = dr[tempName];
if (value != DBNull.Value)
if (value is DateTime) value = value.ToString();
pi.SetValue(t, value, null);
else
if (value is DateTime) value = value.ToString();
if (value is String)
pi.SetValue(t, value.ToString(), null);
ts.Add(t);
return ts;
/// <summary>
/// 序列化对象
/// </summary>
/// <param name="data"></param>
/// <returns></returns>
public static string JSSerialize(object data)
System.Web.Script.Serialization.JavaScriptSerializer ser = new System.Web.Script.Serialization.JavaScriptSerializer();
return ser.Serialize(data);
前台使用Json只需要反序列化话成对象,然后就像获取对象属性一样使用了,
你到百度上搜索序列化反序列化看看应该就明白了。
希望能帮到你…… 参考技术A 可以写自定义方法,通过遍历DT来构造JSON的字符串,最好的直接使用json.net类,去网上搜就有了,很方便的。 参考技术B
以上是关于怎么把数据库里面的数据取出来转换成json格式。急!!!的主要内容,如果未能解决你的问题,请参考以下文章