刚写一个springmvc+extjs的例子。
其中数据传输的时候用到了json。
查了资料配置使用@ResponseBody能够返回json类型的数据。
但是返回的格式是
[{"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我想使用这些数据。需要标准格式的例如{"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。
查了资料配置使用@ResponseBody能够返回json类型的数据。
但是返回的格式是
[{"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我想使用这些数据。需要标准格式的例如{"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能不能返回标准得格式。
如果不能有没有什么变通的方案。
先谢谢了。
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);
HttpServletResponse response,ModelMap model,int page,int limit) throws Exception {
model.addAttribute("user", "hot");
Map pagecontent = new HashMap();
List root = new ArrayList();
root = newsPostService.findAllByPage(page, limit);
pagecontent.put("results",60);
pagecontent.put("rows",root);
return pagecontent;
}