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 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在這裡可有可無,你們可以自行封裝
@Datapublic 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接受到的數據格式要為。
以上這篇Layui前後台交互數據獲取java實例就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持武林網。