首頁  >  文章  >  web前端  >  Layui前後台互動資料取得java實例分享

Layui前後台互動資料取得java實例分享

小云云
小云云原創
2018-01-13 10:27:158415瀏覽

本文主要為大家分享一篇Layui前後台互動資料取得java實例,具有很好的參考價值,希望對大家有幫助。一起跟著小編過來看看吧,希望能幫助大家。

Layui簡介

Layui是一款適用於後台程式設計師的UI框架,學習成本低。 Json資料格式互動前後台,也相當適用單一頁面開發。有興趣的朋友可以看看layui官網。

Layui前後台資料互動

layui有自己的一套特定的資料格式互動(這很重要),必須參數code:0,msg:“”,count:資料size( int),data:”資料List」。一般我們選擇封裝返回接收類別。

Layui前台js請求資料

其中html程式碼

<link rel="stylesheet" href="static/layui/css/layui.css" rel="external nofollow" media="all" />
<script type="text/javascript" src="static/layui/layui.js"></script>
<table class="layui-hide" id="test" lay-filter="table"></table>

js程式碼

layui.use(['form','layer','table'], function(){
   var table = layui.table
   ,form = layui.form,$=layui.$;
   table.render({
   elem: '#test' //绑定table id
   ,url:'sys/menu/list' //数据请求路径
   ,cellMinWidth: 80
   ,cols: [[
    {type:'numbers'}
    ,{field:'name', title:'菜单名称'}
    ,{field:'parentName', title:'父菜单名称',width:150}
    ,{field:'url', title: '菜单路径'}
    ,{field:'perms', title: '菜单权限'}
    ,{field:'type', title:'类型'}
    ,{field:'icon', title:'图标'}
    ,{field:'orderNum', title:'排序'}
    ,{fixed: 'right',title: '操作', width:180,  align:'center', toolbar: '#toolBar'}//一个工具栏 具体请查看layui官网
   ]]
   ,page: true //开启分页
   ,limit:10 //默认十条数据一页
   ,limits:[10,20,30,50] //数据分页条
   ,id: 'testReload' 
   });
});

java後台程式碼

 @RequestMapping("/list")
  @ResponseBody
  @RequiresPermissions("sys:menu:list")
  public Layui list(@RequestParam Map<String, Object> params){
   //查询列表数据
   Query query = new Query(params);
   List<SysMenuEntity> menuList = sysMenuService.queryList(query);
   int total = sysMenuService.queryTotal(query);
   PageUtils pageUtil = new PageUtils(menuList, total, query.getLimit(), query.getPage());
   return Layui.data(pageUtil.getTotalCount(), pageUtil.getList());
  }

Layui工具類程式碼

public class Layui extends HashMap<String, Object> {
 public static Layui data(Integer count,List<?> data){
  Layui r = new Layui();
  r.put("code", 0);
  r.put("msg", "");
  r.put("count", count);
  r.put("data", data);
  return r;
 }
}

PageUtils在這裡可有可無,你們可以自行封裝

@Data
public class PageUtils implements Serializable {
 private static final long serialVersionUID = -1202716581589799959L;
 //总记录数
 private int totalCount;
 //每页记录数
 private int pageSize;
 //总页数
 private int totalPage;
 //当前页数
 private int currPage;
 //列表数据
 private List<?> list;
 /**
  * 分页
  * @param list  列表数据
  * @param totalCount 总记录数
  * @param pageSize 每页记录数
  * @param currPage 当前页数
  */
 public PageUtils(List<?> list, int totalCount, int pageSize, int currPage) {
  this.list = list;
  this.totalCount = totalCount;
  this.pageSize = pageSize;
  this.currPage = currPage;
  this.totalPage = (int)Math.ceil((double)totalCount/pageSize);
 }
}

總之一句話,最後Layui接受到的資料格式要為。

相關推薦:

javascript - php js互動資料

##php和java進行互動資料

extjs中form與grid互動資料(record)的方法_javascript技巧#

以上是Layui前後台互動資料取得java實例分享的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn