layui.use('table', function(){
var table = layui.table;
table.render({
elem: '#test'
,url:'http://localhost:8080/news_ssh/newsAction_news.action'
,toolbar: '#toolbarDemo'
,title: '用户数据表'
,limit: 10
,cols: [[
{type: 'checkbox', fixed: 'left'}
,{field:'id', title:'序号', width:80, fixed: 'left', unresize: true, sort: true}
,{field:'title', title:'标题', width:100}
,{field:'createTime', title:'录入时间', sort: true}
,{field:'name', title:'栏目', width:80}
,{field:'author', title:'录入者', width:120}
,{field:'source', title:'来源', width:100}
,{fixed: 'right', title:'操作', toolbar: '#barDemo', width:150}
]]
,page: true
});
layui的数据来自url,layui规定url返回的数据为json格式,这就需要把java的数据转为json格式,因为json-lib-2.4-jdk15要依赖以下jar包
commons-beanutils-1.8.0.jar、commons-collections-3.2.1.jar、commons-lang-2.6.jar、commons-logging-1.1.1.jar、ezmorph-1.0.6.jar、json-lib-2.4-jdk15.jar、xom-1.2.6.jar,比较麻烦,推荐用阿里的fastjson,fastjson是国内著名的电子商务互联网公司阿里巴巴内部开发的用于java后台处理json格式数据的一个工具包,包括“序列化”和“反序列化”两部分,它具备如下特征:
1).速度最快,测试表明,fastjson具有极快的性能,超越任其他的java json parser。包括自称最快的jackson。
2).功能强大,完全支持java bean、集合、Map、日期、Enum,支持范型,支持自省。
3).无依赖,能够直接运行在Java SE 5.0以上版本
4).支持Android。
5).开源 (Apache 2.0)
我用的是fastjson-1.2.49.jar
fastJson的网址:http://code.alibabatech.com/wiki/display/FastJSON/Overview
public class NewsAction extends SuperAction implements ModelDriven {
public News n=new News();
/*layui的数据表格向url发送请求时,会附上page以及limit这两个参数,
所以服务端需要接收并以此为条件查找数据*/
private int page=1;
private int limit=10;
public int getPage() {
return page;
}
public void setPage(int
page) {
this.page = page;
}
public int getLimit() {
return limit;
}
public void setLimit(int
limit) {
this.limit = limit;
}
public int TypeId=0;
public int newsTypeId=0;
public String news() throws Exception{
WebApplicationContext applicationContext =
WebApplicationContextUtils
.getWebApplicationContext(ServletActionContext.getServletContext());
NewsDao bdao = (NewsDaoImpl)
applicationContext.getBean("newsDao");
/*queryPageNews方法的查询语句为hql="select News.id,News.title,News.createTime,nt.name,News.source,News.author from News News,NewsType nt where News.state=? and News.newsTypeId=nt.id "+
"and News.del=0 order by News.createTime desc";因为Hibernate多表联查,所以手动将结果集转化成JSON*/
List
jsonData
注意,struts.xml中extends="json-default"要导入jar包struts2-json-plugin-2.3.24.jar,param要为root