分頁 模糊查詢
一、所有的web香茅油都會用到分頁顯示和模糊查詢,對於有些人不知道該怎麼寫
二、今天我用springMVC 和 myBatis 寫的分頁和模糊分享給大家,不喜勿噴
三、資料庫是mysql
四、其實寫分頁就是新建一個分頁的類,定義 頁碼 每頁數量 共幾頁 當前頁數 總數量
五、判斷多少頁,獲取總數量除以每頁顯示的數量,有餘數+1頁
六、sql語句就是用 limit 顯示的數量,把從多少條開始,到顯示幾條傳到sql語句上
七、目前每頁的顯示的數量是定義好的,等過兩天有時間把自己可以選擇顯示頁數的程式碼寫出來
使用者實體類 public class User { private int id; private String name; private String sex; public int getId() { return id; } public void setId(int id) { this.id = id; } public String getSex() { return sex; } public void setSex(String sex) { this.sex = sex; } public String getName() { return name; } public void setName(String name) { this.name = name; } } 分頁的實體類 public class Page { /** * 頁碼 */ private int pageNum; /** * 每頁顯示的行數 */ private int pageRows; /** * 總行數 */ private int totalRows; /** * 總頁數 */ private int totalPages; /** * 起始行號 */ private int beginRownum; /** * 結束行號 */ private int endRownum; public Page(int pageNum, int pageRows, int totalRows) { this.pageNum = pageNum; this.pageRows = pageRows; this.totalRows = totalRows; // 計算總頁數:總行數%每頁行數==0?總行數/每頁行數:總行數/每頁行數+1 this.totalPages = totalRows % pageRows == 0 ? totalRows / pageRows : (totalRows / pageRows) + 1; beginRownum = (pageNum - 1) * pageRows; endRownum = pageNum * pageRows; } public int getPageNum() { return pageNum; } public void setPageNum(int pageNum) { this.pageNum = pageNum; } public int getPageRows() { return pageRows; } public void setPageRows(int pageRows) { this.pageRows = pageRows; } public int getTotalRows() { return totalRows; } public void setTotalRows(int totalRows) { this.totalRows = totalRows; } public int getTotalPages() { return totalPages; } public void setTotalPages(int totalPages) { this.totalPages = totalPages; } public int getBeginRownum() { return beginRownum; } public void setBeginRownum(int beginRownum) { this.beginRownum = beginRownum; } public int getEndRownum() { return endRownum; } public void setEndRownum(int endRownum) { this.endRownum = endRownum; } }
mapper 和 對映檔案 public interface UserMapper { public List<User> selectAll(Map<String,Object> map); //查詢總行數 public int selTotalRows(Map<String,Object> map); } <mapper namespace="com.mapper.UserMapper"> <select id="selectAll" resultType="com.entity.User"> select * from user <where> <if test="name != null and name != ''"> and name like #{name} </if> <if test="sex != null and sex != ''"> and sex = #{sex} </if> </where> limit #{page.beginRownum},5 </select> <!-- 查詢總行數 --> <select id="selTotalRows" resultType="int"> select count(id) from user <where> <if test="name != null and name != ''"> and name like #{name} </if> <if test="sex != null and sex != ''"> and sex = #{sex} </if> </where> </select> </mapper>
控制層 public class UserController { @Autowired private UserService userService; @RequestMapping("/showAll.action") public String selAll(HttpServletRequest request){ Map<String,Object> map = new HashMap<String, Object>(); map.put("name", null); map.put("sex", null); Page page = new Page(1,5,userService.selTotalRows(map)); map.put("page", page); List<User> userList = userService.selectAll(map); request.setAttribute("userList", userList); request.setAttribute("page", page); return "two.jsp"; } //查詢所有使用者(帶模糊查詢、分頁) @RequestMapping("/showPage.action") public String selAllLikePage(int pageNum,String name,String sex,HttpServletRequest request){ Map<String,Object> map = new HashMap<String, Object>(); if("".equals(name)){ map.put("name", null); }else{ map.put("name", "%"+name+"%"); } if("".equals(sex)){ map.put("sex", null); }else{ map.put("sex", sex); } Page page = new Page(pageNum,5,userService.selTotalRows(map)); map.put("page", page); List<User> userList = userService.selectAll(map); request.setAttribute("userList",userList); request.setAttribute("page", page); request.setAttribute("name", name); request.setAttribute("sex", sex); return "two.jsp"; } }
jsp頁面
<body>
<div>
<form action="showPage.action?pageNum=1" method="post">
<span>
姓名:<input name="name" value="${name }" />
性別:<input name="sex" value="${sex }" />
<input type="submit" value="查詢" />
</span>
</form>
</div>
<br><br>
<div>
<table width="500" border="1" cellspacing="0" cellpadding="0">
<tr>
<th width="100px">序號</th>
<th width="200px">姓名</th>
<th width="200px">性別</th>
</tr>
<c:forEach items="${userList }" var="user">
<tr>
<td>${user.id }</td>
<td>${user.name }</td>
<td>${user.sex }</td>
</tr>
</c:forEach>
<tr>
<td class="scott" colspan="20" style="text-align: center;">
<c:if test="${page.pageNum > 1 }">
<a href="showPage.action?name=${name }&sex=${sex }&pageNum=1">首頁</a>
<a href="showPage.action?name=${name }&sex=${sex }&pageNum=${page.pageNum - 1 }">上一頁</a>
</c:if>
<c:forEach begin="1" end="${page.totalPages}" step="1" var="num">
<c:if test="${page.pageNum == num }">${num }</c:if>
<c:if test="${page.pageNum != num }">
<a href="showPage.action?name=${name }&sex${sex }&pageNum=${num }">${num }</a>
</c:if>
</c:forEach>
<c:if test="${page.pageNum < page.totalPages }">
<a href="showPage.action?name=${name }&sex=${sex }&pageNum=${page.pageNum + 1 }">下一頁</a>
<a href="showPage.action?name=${name }&sex=${sex }&pageNum=${page.totalPages }">尾頁</a>
</c:if>
總${page.pageNum}/${page.totalPages }頁
</td>
</tr>
</table>
</div>
</body>
相關推薦
guns按行查詢,分頁查詢,分頁模糊查詢,模糊查詢
@ApiOperation(value = "測試") @RequestMapping(value = "/test",method = RequestMethod.POST) @ResponseBody public Object test() {
分頁 模糊查詢
一、所有的web香茅油都會用到分頁顯示和模糊查詢,對於有些人不知道該怎麼寫 二、今天我用springMVC 和 myBatis 寫的分頁和模糊分享給大家,不喜勿噴 三、資料庫是mysql 四、其實寫分頁就是新建一個分頁的類,定義 頁碼 每頁數量 共幾頁 當前頁數
Django分頁和查詢參數的問題
內容 pytho 傳參 earch ear 現實 dpm .net repl 查詢是通過get的方式,之前沒有分頁之前,url是這樣的: http://hostname/search?query=port%3A8080 那麽我的想法是如果分頁了。 1,不帶page參數了。n
php mysql 分詞 模糊查詢 並根據分詞匹配度排序
close desc highlight this then 中文 sql 一個數 exec 中文分詞用 SCWS 的api http://www.xunsearch.com/scws/api.php 1.php中用 curl獲取分詞結果 protected functi
關於easyUI分頁條件查詢的解決方法
在做專案時,遇到運用easyUI框架,進行條件查詢無法分頁的問題,開始是運用form表單提交的方式,根據不同的條件篩選資料。這樣的方法能實現資料按照所傳條件的查詢,但對查詢得到的資料進行分頁控制不知道怎麼處理。在多方查詢後,找到如下解決辦法:
EasyUI表格手動設定分頁,提高查詢效率
1.前段時間發了一個EasyUI表格的製作,使用自動分頁方法,後來發現查詢效率太低,今天來設定手動分頁。在js中先宣告幾個全域性變數。 2.在查詢方法裡需要用ajax查詢資料數量,odata是返回的結果,chg_table是表的id,RefreshPageNumber方法是一個工具,稍後貼
MVCEasyUI+jQuery+EF+Ajax實現分頁+條件查詢
Controller程式碼: using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.Web.Mvc; using
springboot分頁條件查詢java.lang.ClassCastException: java.util.ArrayList cannot be cast to com.github.pageh
java.lang.ClassCastException: java.util.ArrayList cannot be cast to com.github.pagehelper.Page at com.boku.www.service.impl.Projec
mongorepository分頁條件查詢
最近專案有用到mongodb,也是經歷了從不會到滿百度的查資料,對mongodb有了些許的理解,專案裡面總想著偷懶,不想使用template的類去拼寫,就找了spring封裝好的mongorepository進行查詢,大體跟spring-data-jpa差不多,廢話不多說了 進入主題
整理近期專案——分頁元件+查詢功能+許可權展示3合頁面專案
近期完成小專案中含登入頁、首頁及詳情頁,其中運用到自封裝分頁元件及許可權頁面展示結合查詢功能。話不多說,進主題 login頁 index首頁 這裡先說需求,該介面分3種許可權,第一種、二種為管理員,管理員登入後無法新增資料,查詢條件只有已稽核及未稽核,顯示錶格中備案數量及
hibernate 通用分頁,查詢分頁的泛型類
寫在泛型dao層的實現類裡,可以達到寫一次,然後繼承這個實現類,傳入各自的型別就可以達到很高的複用效果,增加開發效率 也可以作為查詢的分頁,自己動態構造查詢的語句,然後對應好傳入的引數,動態構造查詢語句的時候StringBuffer,直接用string型別效率低。 向上具體
PostgreSQL兩種分頁方法查詢時間比較
資料庫中存了3000W條資料,兩種分頁查詢測試時間 第一種 SELECT * FROM test_table WHERE i_id>1000 limit 100; Time: 0.016s 第二種 SELECT * FROM test_table limi
黑馬十次方專案day02-03之springdatajpa 分頁條件查詢
文章目錄 需求分析 Control層 Service 開啟專案,測試 需求分析 根據十次方api的分頁條件查詢如下 可以看到分頁條件查詢為post請求, 必須傳遞三個引數.
MybatisPlus 分頁 複雜查詢
Page page=new Page(param.getCurrent(),param.getSize()); Wrapper w= new EntityWrapper(); w.eq("trade_type",tradeType); //支
spring data jpa 中@Query註解分頁pageable查詢
持有層程式碼:Repository @Query(value = "select * from user_liveapp where user_Id = :userId ORDER BY ?#{#pageable}", nativeQuery = true) Page&
SSM框架AJAX分頁 PageHelper查詢,增刪改 前端業務邏輯
//定義全域性變數,總記錄數 var totalRecord,currentPage; //頁面載入完成以後,直接去傳送ajax請求,要到分頁資料 $(function(){ //頁面載入完預設進首頁
91---Criteria的內連結,分頁,查詢唯一物件,條件查詢,分組統計,投影查詢,DetachedCriteria
================Criteria分頁加動態查詢方法====================================== public PageInfo<Auction> select(Auction condition, int pageIndex){DetachedC
hibernate HQL 分頁 關聯查詢(一對多單向,多對一 雙向,多對多)
HQL的 分頁 1.首先我們準備好實體類: package cn.happy.hibernate04pagelist; import cn.happy.hibernate03hql.conEmp; import java.util.Date; /** * Creat
datatables表格外掛實現前後端排序+分頁+條件查詢
1、在頁面中引入datatables需要的js及css檔案,定義一個表格 <link rel="stylesheet" href="/script/libs/DataTables/datatables.min.css" type="text/css" />
mybatis分頁條件查詢動態sql
http://blog.csdn.net/future_it_daniel/article/details/51810489 MyBatis中實現動態的SQL語句,分頁以及mybatis的常用的配置 原創 2016年07月02日 11:49:11 7223