小編給大家分享一下在SSM框架下如何使用laypage和ajax實(shí)現(xiàn)分頁和數(shù)據(jù)交互的方法,希望大家閱讀完這篇文章之后都有所收獲,下面讓我們一起去探討吧!
成都創(chuàng)新互聯(lián)公司是一家集網(wǎng)站建設(shè),襄城企業(yè)網(wǎng)站建設(shè),襄城品牌網(wǎng)站建設(shè),網(wǎng)站定制,襄城網(wǎng)站建設(shè)報(bào)價(jià),網(wǎng)絡(luò)營銷,網(wǎng)絡(luò)優(yōu)化,襄城網(wǎng)站推廣為一體的創(chuàng)新建站企業(yè),幫助傳統(tǒng)企業(yè)提升企業(yè)形象加強(qiáng)企業(yè)競爭力??沙浞譂M足這一群體相比中小企業(yè)更為豐富、高端、多元的互聯(lián)網(wǎng)需求。同時(shí)我們時(shí)刻保持專業(yè)、時(shí)尚、前沿,時(shí)刻以成就客戶成長自我,堅(jiān)持不斷學(xué)習(xí)、思考、沉淀、凈化自己,讓我們?yōu)楦嗟钠髽I(yè)打造出實(shí)用型網(wǎng)站。
layui,一款前端框架,提供了豐富的組件和模板,layui提供的簡約后臺管理模板,對于后端學(xué)習(xí)者來說是個(gè)不錯(cuò)的福音。這里記錄在SSM框架下使用layui的分頁組件laypage。(官網(wǎng)開發(fā)文檔)
環(huán)境 Spring+SpringMVC+Mybatis , jquery-3.1.0.min.js , MySQL-connector-java-5.1.34
前端代碼主要參考的是layui官網(wǎng)給定的代碼,加載layui.css和layui.js;除此之外,介于接下來用ajax與后臺進(jìn)行數(shù)據(jù)交互,因此這里也需要加載jquery的文件,我這里加載的是jquery-3.1.0-min.js。
主要代碼如下:
//定義分頁
后端采用SpirngMVC和Mybatis進(jìn)行數(shù)據(jù)處理。
創(chuàng)建Dao接口
ListselectPageInfoByDel(@Param("start") int start); //獲取頁面數(shù)據(jù) int countNumber(); //記錄總的條數(shù)
編寫Mapper.xml
這里主要用到了mysql的limit,limit從下標(biāo)0開始,limit0,8表示的是從下標(biāo)0開始,查詢8條數(shù)據(jù)。
創(chuàng)建一個(gè)Page的pojo類
public class Pageimplements Serializable { private static final long serialVersionUID = 337297181251071639L; private Integer page;//當(dāng)前頁 private Integer rows;//頁大小 private Integer totalRecord;// 總記錄數(shù) private Integer firstPage; //首頁 private Integer endPage; //末頁 private List list;//頁面數(shù)據(jù)列表 //這里省略的get和set的方法 }
創(chuàng)建Service接口
//查看分頁的信息 public ListselectPageInfo(int page); //查看所有信息的總數(shù) int getCount();
創(chuàng)建Service的實(shí)現(xiàn)類impl
//這里省略了Dao的實(shí)例化,只顯示service接口的實(shí)現(xiàn)方法 public ListselectPageInfo(int page) { int rows = 8; //一頁顯示8條數(shù)據(jù) int start = page*rows; //這里表示數(shù)據(jù)庫從第幾條數(shù)據(jù)開始查詢(limit從下標(biāo)0開始) return jobDao.selectPageInfoByDel(start); } public int getCount() { return jobDao.countNumber(); }
編寫Controller
@RequestMapping("page") public @ResponseBody PageselectPageInfo(HttpServletRequest request, Model model,@RequestParam("start") int start){ List list= jobinfoService.selectPageInfo(start); Page pageInfo = new Page (); int count = jobinfoService.getCount(); //獲取總數(shù) int endPage = 0; //8條數(shù)據(jù)為一頁 if(jobinfoService.getCount()%8==0){ endPage = jobinfoService.getCount()/8; }else{ endPage = jobinfoService.getCount()/8 +1 ; } pageInfo.setPage(start+1); pageInfo.setTotalRecord(count); pageInfo.setList(list); pageInfo.setRows(8); pageInfo.setFirstPage(1); pageInfo.setEndPage(endPage); return pageInfo; }
運(yùn)行結(jié)果
事實(shí)上,整體功能的實(shí)現(xiàn)在頁面與后臺用ajax傳遞數(shù)據(jù)那一塊花費(fèi)了一下時(shí)間,因?yàn)榈谝淮谓佑|到layui,也漸漸感受到了layui與傳統(tǒng)ajax數(shù)據(jù)傳遞的不同,layui對方法進(jìn)行了封裝,因此用ajax傳數(shù)據(jù)的時(shí)候也需依于框架進(jìn)行。
看完了這篇文章,相信你對“在SSM框架下如何使用laypage和ajax實(shí)現(xiàn)分頁和數(shù)據(jù)交互的方法”有了一定的了解,如果想了解更多相關(guān)知識,歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道,感謝各位的閱讀!