溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

如何在Layui前后臺交互數(shù)據(jù)獲取java

發(fā)布時間:2021-02-19 15:50:48 來源:億速云 閱讀:412 作者:Leah 欄目:編程語言

如何在Layui前后臺交互數(shù)據(jù)獲取java?針對這個問題,這篇文章詳細介紹了相對應(yīng)的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。

Layui簡介

Layui是一款適用于后臺程序員的UI框架,學(xué)習(xí)成本低。Json數(shù)據(jù)格式交互前后臺,并且也相當適用單頁面開發(fā)。有興趣的朋友可以看看layui官網(wǎng)。

Layui前后臺數(shù)據(jù)交互

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

Layui前臺js請求數(shù)據(jù)

其中 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' //數(shù)據(jù)請求路徑
   ,cellMinWidth: 80
   ,cols: [[
    {type:'numbers'}
    ,{field:'name', title:'菜單名稱'}
    ,{field:'parentName', title:'父菜單名稱',width:150}
    ,{field:'url', title: '菜單路徑'}
    ,{field:'perms', title: '菜單權(quán)限'}
    ,{field:'type', title:'類型'}
    ,{field:'icon', title:'圖標'}
    ,{field:'orderNum', title:'排序'}
    ,{fixed: 'right',title: '操作', width:180,  align:'center', toolbar: '#toolBar'}//一個工具欄 具體請查看layui官網(wǎng)
   ]]
   ,page: true //開啟分頁
   ,limit:10 //默認十條數(shù)據(jù)一頁
   ,limits:[10,20,30,50] //數(shù)據(jù)分頁條
   ,id: 'testReload' 
   });
});

java后臺代碼

 @RequestMapping("/list")
  @ResponseBody
  @RequiresPermissions("sys:menu:list")
  public Layui list(@RequestParam Map<String, Object> params){
   //查詢列表數(shù)據(jù)
   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;
 //總記錄數(shù)
 private int totalCount;
 //每頁記錄數(shù)
 private int pageSize;
 //總頁數(shù)
 private int totalPage;
 //當前頁數(shù)
 private int currPage;
 //列表數(shù)據(jù)
 private List<?> list;
 /**
  * 分頁
  * @param list  列表數(shù)據(jù)
  * @param totalCount 總記錄數(shù)
  * @param pageSize 每頁記錄數(shù)
  * @param currPage 當前頁數(shù)
  */
 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);
 }
}

關(guān)于如何在Layui前后臺交互數(shù)據(jù)獲取java問題的解答就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關(guān)注億速云行業(yè)資訊頻道了解更多相關(guān)知識。

向AI問一下細節(jié)

免責聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI