解决方案 »
- 关于我做的一个日报系统问题
- Mule 3.1.1 运行提示DeploymentService: Application directory check interval: 5000请问什
- 大家说说DRP吧。。
- 大家常说的网页程序员是不是就是指做J2EE的呢
- Struts中如何得到URL参数
- 各位帮忙看看Jbuilderx+jboss2.2.5的问题,哎!顺便发点牢骚。
- 问个问题,有没有连接上数据库,可以把数据库中的表的数据,转成xml文件,只需要指定选项就可以了!
- weblogic7 中的datasource 和 txdatasource 的问题请教
- 请教Ent bmp1.x调用问题?
- 如何用Jconnect连接局域网中的另外一台电脑的Sybase 数据库啊。在线等!
- 动态代理和aop分别是什么? 他们有什么联系啊!
- 一个servlet里面,怎么实现多用户对话?
你我用了jsonlib,和fastjson都不行.不知道你用哪个包?能否告知下?
可以把List<Object[]>遍历一遍,重新封装成List<Map>就行。
JSONArray.fromObject(List<Map>).toString()木有问题,也没定义bean。
function getJsonStr(){
var jsonStr = "";
var array = new Array();
$("#participantList").find("tr").each(function(i){
var entitytype = $(this).find("td").eq(1).attr("id");
var params = $(this).find("td").eq(1).attr("params");
var entityname = $(this).find("td").eq(2).text();
var entityid = $(this).find("td").eq(2).attr("id");
jsonStr= "{'entitytype':'"+entitytype+"','entityname':'"+entityname+"','entityid':'"+entityid+"','params':'"+params+"'}";
array.push(jsonStr);
});
return "["+array+"]";
}
* 生成Json格式的数据
* @param contacts
* @return
*/
private String buildJson(List<Contact> contacts){
try {
JSONArray jsonArray = new JSONArray();
for(Contact contact:contacts){
JSONObject jsonObject = new JSONObject();
jsonObject.put("id", contact.getId());
jsonObject.put("name", contact.getName());
jsonObject.put("phone", contact.getPhone());
jsonObject.put("a1", contact.getA1());
jsonObject.put("a2", contact.getA2());
jsonObject.put("a3", contact.getA3());
jsonObject.put("a4", contact.getA4());
jsonObject.put("a5", contact.getA5());
jsonObject.put("a6", contact.getA6());
jsonObject.put("a7", contact.getA7());
jsonObject.put("a8", contact.getA8());
jsonObject.put("a9", contact.getA9());
jsonObject.put("a10", contact.getA10());
jsonObject.put("a11", contact.getA11());
jsonObject.put("a12", contact.getA12());
jsonObject.put("a13", contact.getA13());
jsonObject.put("a14", contact.getA14());
jsonObject.put("a15", contact.getA15());
jsonObject.put("a16", contact.getA16());
jsonObject.put("a17", contact.getA17());
jsonObject.put("a18", contact.getA18());
jsonArray.put(jsonObject);
}
return jsonArray.toString();
} catch (JSONException e) {
e.printStackTrace();
}
return null;
}
不知道明白了没有?
List转为Map再转为json总行了吧?
/*
* 全部显示列表,不带分页
*
*/
public static String getListString(List list)
{
Map map = null;
StringBuffer contents = new StringBuffer();
if(list!=null)
{
contents.append("{\"total\":");
contents.append(list.size());
contents.append(",\"rows\":[");
for(int i=0;i<list.size();i++)
{
map = (Map)list.get(i);
Set entries = map.entrySet();
if(i==list.size()-1)
{
if(entries != null)
{
Iterator iterator = entries.iterator( );
contents.append("{");
while(iterator.hasNext())
{
Entry entry =(Entry)iterator.next();
Object key = entry.getKey();
Object value = StringUtil.nullToEmpty(entry.getValue());
//添加key
contents.append("\"");
contents.append(key);
contents.append("\":");
//添加value
contents.append("\"");
contents.append(value);
if(iterator.hasNext())
{
contents.append("\",");
}
else
{
contents.append("\"");
}
}
contents.append("}");
}
}
else
{
if(entries != null)
{
Iterator iterator = entries.iterator( );
contents.append("{");
while(iterator.hasNext())
{
Entry entry =(Entry)iterator.next();
Object key = entry.getKey();
Object value = StringUtil.nullToEmpty(entry.getValue());
//添加key
contents.append("\"");
contents.append(key);
contents.append("\":");
//添加value
contents.append("\"");
contents.append(value);
if(iterator.hasNext())
{
contents.append("\",");
}
else
{
contents.append("\"");
}
}
contents.append("},");
}
}
}
contents.append("]}");
}
return contents.toString();
}
查询sql获取list
注:类型转换为String public List<Map<String,String>> queryForList(String sql,String dbName) throws SQLException{
Connection con = cdb.getConnection(dbName);
ResultSet rs = null;
Statement stmt = null;
List list = new ArrayList();
Map<String,String> map = new HashMap();
try{
stmt = con.createStatement();
rs = stmt.executeQuery(sql);
while(rs.next()){
map = new HashMap();
ResultSetMetaData rsmd = rs.getMetaData();
int count = rsmd.getColumnCount();
for(int i=1;i<=count;i++){
String key = rsmd.getColumnLabel(i);
Object obj = rs.getObject(key);
String value = obj==null?"":obj.toString().trim();
map.put(key.toUpperCase(), value);
}
list.add(map);
}
MsgUtil.printConsole(sql);
con.commit();
return list;
}catch(Exception e){
if(con!=null){
con.rollback();
}
MsgUtil.printConsole("查询数据库失败!错误sql:"+sql);
return new ArrayList();
}finally{
closeAll(con,rs,stmt);
}
}
下面一个是将list转换为json格式的字符串 public static String toJsonStringByList(List<Map<String,String>> list){
if(list == null) return "";
StringBuffer sb = new StringBuffer("");
sb.append("[");
for (Map map:list) {
Iterator it = map.keySet().iterator();
sb.append("{");
while(it.hasNext()){
String key = it.next().toString();
if(map.get(key)!=null&&!"".equals(map.get(key))){
sb.append("\"").append(key).append("\":");
sb.append("\"").append(map.get(key)).append("\",");
}
}
if(sb.length()-1==sb.lastIndexOf(",")){
sb.delete(sb.length()-1, sb.length());
}
sb.append("},");
}
if(sb.length()-1==sb.lastIndexOf(",")){
sb.delete(sb.length()-1, sb.length());
}
sb.append("]");
return sb.toString();
}