Layuiデータテーブルとjavaバックグラウンドデータのインタラクション

5087 ワード

Layuiデータテーブルとjavaバックグラウンドデータのインタラクション
jsp部

js


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-jdk 15は の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-jdk 15.jar、xom-1.2.6.jarに するからである. に で、アリのfastjsonを して、fastjsonは の な のインターネット アリババの で したjavaのバックグラウンドでjsonのフォーマットのデータを するための1つのツールパッケージで、“シーケンス ”と“ シーケンス ”の2つの を んで、それは の を えます: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/OverviewNewsAction
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*/
  Listlist=bdao.queryPageNews(this.getPage(), this.getLimit(), 0);

  List mylist = new
LinkedList();

  NewsAndNewsType nt;

  //System.out.println(list);

  for(Object[] object:list){             
  

   //System.out.println(object.length);           
 

   nt = new
NewsAndNewsType();              


   nt.setId(object[0].toString());

   nt.setTitle((String) object[1]);

   nt.setCreateTime(object[2].toString());

   nt.setName((String) object[3]);

   nt.setSource((String) object[4]);

   nt.setAuthor((String) object[5]);

   mylist.add(nt);             


   }  

  session.removeAttribute("news_list");

  //  session 

  if(list!=null&&list.size()>0){

   session.setAttribute("news_list", list);

   Map result = new HashMap();

      result.put("code", 0);

      result.put("msg", "");

     
result.put("count",bdao.getqueryPageNewsCount(0));

      JSONArray array = (JSONArray)
JSON.toJSON(mylist);

      result.put("data", array);

      //      JSON  ,       

     
ActionContext.getContext().getValueStack().set("jsonData",JSON.toJSON(result));

      return "success";

  }else{

   session.setAttribute("listSize",list.size());

   System.out.println("    ,    "+list.size());

  }

  System.out.println("    ,    "+list.size());

  return SUCCESS;

 }

 public News
getModel() {

  // TODO Auto-generated method stub

  return null;

 }

}
struts.xml

  
        
            jsonData
        
        
 
struts.xmlでextends="json-default"jarパッケージstruts 2-json-plugin-2.3.24.jarをインポートするには、paramがroot layui     java      _ 1