最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

ssm實現分頁查詢的實例

 更新時間:2017年11月07日 10:16:11   作者:小Cai先森  
下面小編就為大家?guī)硪黄猻sm實現分頁查詢的實例。小編覺得挺不錯的,現在就分享給大家,也給大家做個參考。一起跟隨小編過來看看吧

ssm整合實現分頁查詢

一、通過limit查詢語句實現分頁,并展示

1.mapper.xml配置

<select id="selectUsersByPage" parameterType="int" resultMap="UserMap">
   SELECT * number from user limit #{page},10
</select> 

查詢user表,從第page項開始,每次返回10條數據

2.index.jsp

<html>
<head>
 <title>page</title>
 <link rel="stylesheet" type="text/css" href="css/index.css" rel="external nofollow" >
</head>
<body>
<div style="width: 100%;margin-top:20px;">
 <table>
  <tr style="background-color: #F5F5F5;">
   <th>username</th>
   <th>password</th>
   <th>sex</th>
   <th>email</th>
   <th>createTime</th>
   <th>updateTime</th>
  </tr>
  <div id = "show_data">
   <c:choose>
    <c:when test="${ulist != null}">
     <c:forEach items="${ulist}" var="u">
      <tr>
       <td>${u.username}</td>
       <td>${u.password}</td>
       <td>${u.sex}</td>
       <td>${u.email}</td>
       <td><fmt:formatDate value="${u.create_time}" type="date"/></td>
       <td><fmt:formatDate value="${u.update_time}" type="date"/></td>
      </tr>
     </c:forEach>
    </c:when>
    <c:otherwise>
     <tr>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
      <td></td>
     </tr>
    </c:otherwise>
   </c:choose>
  </div>
 </table>
 <div class="page">
  <div class="page_cell">首頁</div>
  <div class="page_cell" ip="up_page">上一頁</div>
  <div style="float: left;margin: 2px"><%=session.getAttribute("page")%>/${ulist[0].number}</div>
  <div class="page_cell" onclick="next_page(<%=session.getAttribute("page")%>)">下一頁</div>
  <div class="page_cell">末頁</div>
 </div>
</div>
</body>
 <script type="text/javascript" src="js/index.js"></script>
 <script type="text/javascript" src="js/jquery.js"></script>
</html>

3.css

body{
 width: 100%;
 margin: 0;
}
table{
 border:1px solid red;
 text-align: center;
 margin: auto;
 border-collapse: collapse;
}
tr{
 border: 1px solid #ddd
}
th{
 width: 150px;
 font-weight: 700;
 height: 36px;
}
td{
 height: 36px;
}
.page{
 margin: auto;
 width: 300px;
 text-align: center;
 margin-top: 10px;
}
.page_cell{
 float: left;
 width: 50px;
 border:1px solid #F5F5F5;
 margin:2px;
 cursor: pointer;
}
.page_cell:hover{
 -webkit-box-shadow: #777 0px 0px 1px;
}

4.js

/**
 * 下一頁
 */
function next_page(page){
 var data = {
  "page":page
 };
 $.ajax({
  type:"post",
  url:"/RoleControl/next_page.do",
  data:JSON.stringify(data),
  dataType:"json",
  contentType:"application/json",
  success:function(data){
   var show_data = document.getElementById("show_data")
   show_data.innerHTML = " ";
   for(i=0; i<data.length; i++){
    //.....異步刷新頁面
   }
  },
  error:function(data){
   alert("網絡連接錯誤");
  }
 });
}

5.控制器

@RequestMapping("/index.do")
 public String index(ModelMap map, HttpSession session){
  session.setAttribute("page",1);
  List<User> ulist = userService.selectUsersByPage(0);
  map.put("ulist",ulist);
  return "index";
 }

 /**
  * 用戶信息分頁查詢
  * @param params
  * @return
  */
 @RequestMapping(value = "/next_page.do",method = RequestMethod.POST)
 @ResponseBody
 public String getUsersByPage(@RequestBody JSONObject params){
  // Map<String,String> paramsMap = JSON.parseObject(params,new TypeReference<Map<String,String>>(){});
  System.out.println(params.get("page").toString());
  List<User> ulist = userService.selectUsersByPage(Integer.parseInt(params.get("page").toString())*10);
  return JSON.toJSONString(ulist);
 }

 問題:在ajax傳遞json對象的時候,發(fā)生了415錯誤(未知媒體錯誤)

  

 原因:

<mvc:annotation-driven />會自動注冊DefaultAnnotationHandlerMappingAnnotationMethodHandlerAdapter兩個bean ,AnnotationMethodHandlerAdapter將會初始化7個轉換器,可以通過調用AnnotationMethodHandlerAdapter的getMessageConverts()方法來獲取轉換器的一個集合 List<HttpMessageConverter>

ByteArrayHttpMessageConverter 
StringHttpMessageConverter 
ResourceHttpMessageConverter 
SourceHttpMessageConverter 
XmlAwareFormHttpMessageConverter 
Jaxb2RootElementHttpMessageConverter 
MappingJacksonHttpMessageConverter

解決對于json的解析就是通過MappingJacksonHttpMessageConverter轉換器完成的。所以就需要加入jackson依賴包:

    <dependency>
      <groupId>com.fasterxml.jackson.core</groupId>
      <artifactId>jackson-core</artifactId>
      <version>2.5.2</version>
    </dependency>

    <dependency>
      <groupId>com.fasterxml.jackson.core</groupId>
      <artifactId>jackson-databind</artifactId>
      <version>2.5.2</version>
    </dependency>

加了依賴包后問題就完美解決了,運行結果如下:

  

以上查詢的數據是通過存儲過程批量插入的:

begin 
  declare pid int;
  set pid = 10000;
  while pid>0 DO
    insert into user values (pid,'pw','sex','email',now(),now());
    set pid = pid-1;
  end while;
end

這篇ssm實現分頁查詢的實例就是小編分享給大家的全部內容了,希望能給大家一個參考,也希望大家多多支持腳本之家。

相關文章

  • mybatis3使用@Select等注解實現增刪改查操作

    mybatis3使用@Select等注解實現增刪改查操作

    這篇文章主要介紹了mybatis3使用@Select等注解實現增刪改查操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-11-11
  • 一篇文章帶你了解MySQL數據庫基礎

    一篇文章帶你了解MySQL數據庫基礎

    這篇文章主要介紹了MySql數據庫基礎知識點,總結整理了mysql數據庫基本創(chuàng)建、查看、選擇、刪除以及數據類型相關操作技巧,需要的朋友可以參考下
    2021-08-08
  • Apache Commons Math3學習之數值積分實例代碼

    Apache Commons Math3學習之數值積分實例代碼

    這篇文章主要介紹了Apache Commons Math3學習之數值積分實例代碼,涉及使用辛普森積分的例子,這里分享給大家,供需要的朋友參考。
    2017-10-10
  • SpringBoot項目@Async方法問題解決方案

    SpringBoot項目@Async方法問題解決方案

    這篇文章主要介紹了SpringBoot項目@Async方法問題解決方案,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-04-04
  • MyBatis中RowBounds實現內存分頁

    MyBatis中RowBounds實現內存分頁

    RowBounds是MyBatis提供的一種內存分頁方式,適用于小數據量的分頁場景,本文就來詳細的介紹一下,具有一定的參考價值,感興趣的可以了解一下
    2024-12-12
  • Java日志框架用法及常見問題解決方案

    Java日志框架用法及常見問題解決方案

    這篇文章主要介紹了Java日志框架用法及常見問題解決方案,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下
    2020-10-10
  • 五個Java中線程池使用不當的避坑指南

    五個Java中線程池使用不當的避坑指南

    線程池是?Java?多線程編程中的一個重要概念,它可以有效地管理和復用線程資源,提高系統的性能和穩(wěn)定性,本文將介紹線程池使用不當的五個坑,以及如何避免和解決它們,希望對大家有所幫助
    2024-02-02
  • Spring?Boot虛擬線程Webflux在JWT驗證和MySQL查詢性能比較

    Spring?Boot虛擬線程Webflux在JWT驗證和MySQL查詢性能比較

    這篇文章主要為大家介紹了Spring Boot虛擬線程與Webflux在JWT驗證和MySQL查詢上的性能比較,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-09-09
  • RabbitMQ高級應用之消費端限流策略basicQos詳解

    RabbitMQ高級應用之消費端限流策略basicQos詳解

    這篇文章主要介紹了RabbitMQ高級應用之消費端限流策略basicQos詳解,高并發(fā)情況下,隊列里面一瞬間就就積累了上萬條數據,但是消費者無法同時處理這么多請求,這種場景下我們就需要對消費端進行限流,需要的朋友可以參考下
    2023-08-08
  • Struts2學習手冊之文件上傳基礎教程

    Struts2學習手冊之文件上傳基礎教程

    Struts2提供的文件上傳下載機制十分簡便,使得我們寫很少的代碼,下面這篇文章主要給大家介紹了關于Struts2學習手冊之文件上傳的相關資料,文中通過示例代碼介紹的非常詳細,需要的朋友可以參考下
    2018-05-05

最新評論

新密市| 白城市| 江达县| 泗洪县| 同心县| 图木舒克市| 清镇市| 喀喇| 修武县| 岑溪市| 湘阴县| 金乡县| 孟津县| 古蔺县| 丹江口市| 余江县| 抚顺县| 凤庆县| 凤台县| 兴海县| 内乡县| 普洱| 来宾市| 寿宁县| 南溪县| 宁波市| 凉山| 胶州市| 岳普湖县| 商丘市| 沂水县| 湖北省| 萝北县| 陈巴尔虎旗| 龙山县| 荔浦县| 威远县| 红河县| 苍山县| 库尔勒市| 邵阳市|