您的位置:首页 > 编程语言 > Java开发

struts2将数据通过Json格式显示于EasyUI-datagrid数据表格

2016-07-22 08:33 609 查看

1.搭建ssh开发环境

2.写好Dao、service等方法

3.建立DTO数据传输对象:

package com.beichende.sshwork.user.web.dto;

import java.util.ArrayList;
import java.util.List;
import com.beichende.sshwork.pojo.User;

public class Pagination<T> {
private int total;
private List<User> rows;
/**
* @return the total
*/
public int getTotal() {
return total;
}
/**
* @param total the total to set
*/
public void setTotal(int total) {
this.total = total;
}
/**
* @return the list
*/
public List<User> getRows() {
return rows;
}
/**
* @param list the list to set
*/
public void setRows(List<User> list) {
if(list==null){
this.rows = new ArrayList<User>();
}else {
this.rows = list;
}
}

}

  由于datagrid数据表格接受的json数据数据格式是{"total":"",rows:""},所以在DTO对象中需要加入total:总条数、rows:内容

4.Action传输json数据

public String query(){
String hqlString = "from User" ;
users = userService.getList(hqlString, null);
pag1 = new Pagination<User>();
pag1.setTotal(users.size());
pag1.setRows(users);
return SUCCESS ;
}

  创建DTO对象(pag1),需要为其配置get()方法(struts2靠get()声明输出数据)。从数据库获取数据,并为pag1的total、rows属性赋值。并在struts.xml配置该方法及返回:

<package name="work" namespace="/user" extends="json-default,struts-default">
<action name="query" class="userAction" method="query">
<result type="json">
<param name="root">pag1</param>
</result>
</action>
</package>

  pakage的extends还需要是"json-default",result中配置param,name为"root",内容是需要返回到页面的数据(如pag1:antion的DTO类实例)

5.页面easyui-datagrid的配置:

  将其url对应为此action的query方法的 .action

$('#dg').datagrid({
url:'user/queryList.action',
pageList: [2,5,10,20,50,100],
pageSize:2
});

   easyui-datagrid数据表会自动封装数据显示表中。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: