首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > JAVA > Java Web开发 >

springmvc和extjs融合的有关问题。json

2012-01-19 
springmvc和extjs融合的问题。json刚写一个springmvc+extjs的例子。其中数据传输的时候用到了json。查了资料

springmvc和extjs融合的问题。json
刚写一个springmvc+extjs的例子。
其中数据传输的时候用到了json。
查了资料配置使用@ResponseBody能够返回json类型的数据。
但是返回的格式是

XML code
[{"name":"123","id":2,"password":"123","age":11,"birthday":653151600000,"sex":"男"},{"name":"123","id":3,"password":"123","age":123,"birthday":677170800000,"sex":"男"},{"name":"admin","id":7,"password":"admin","age":11,"birthday":653151600000,"sex":"男"}]


但是在extjs我想使用这些数据。需要标准格式的例如
XML code
{"list":[{"id":3,"author":"dsadsa","title":"言情","price":123.0,"brief":"sdsada","bookName":"dsadsadsa"},{"id":4,"author":"dasd","title":"言情","price":123.0,"brief":"asda","bookName":"sadsa"}],"totalCount":2}


包含root名、totalCount的格式。
不知道springmvc能不能返回标准得格式。


如果不能有没有什么变通的方案。
先谢谢了。

[解决办法]
个人认为:你需要手动生成json数据。简单写一个javabean.内有属性list与属性totalCount,然后用json包format得到就是extjs的json数据。
[解决办法]
Java code
package com.dthh.util;import java.sql.ResultSet;import java.sql.ResultSetMetaData;import java.util.HashMap;import java.util.Map;import org.apache.commons.beanutils.BeanUtils;public class Resultset {        /**     * 传入rs,sb     * @param rs     * @param sb     */    public static void processResultsetString(ResultSet rs,StringBuffer sb) {                try {            ResultSetMetaData rsmd = rs.getMetaData();            int columnCount = rsmd.getColumnCount();//字段的数量                    for (int i = 1; i <= columnCount; i++) {                String columnName = rsmd.getColumnName(i);//获取到字段的名称                String value=rs.getString(columnName);//取值                sb.append(columnName+":'"+value+"'");                if(i!=columnCount){                sb.append(",");                }            }        } catch (Exception e) {            e.printStackTrace();        }    }    }用法StringBuffer sb = new StringBuffer();            sb.append("{data:[");            while(rs.next()){                sb.append("{");                Resultset.processResultsetString(rs, sb);                sb.append("}");                if(!rs.isLast()){                    sb.append(",");                }            }            sb.append("]}");            String json = sb.toString();            System.out.println(json);
[解决办法]
帮顶。
[解决办法]
用StringBuffer自己拼json

这是最常用的方法

祝楼主好运

热点排行