一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務(wù)器之家:專注于服務(wù)器技術(shù)及軟件下載分享
分類導(dǎo)航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術(shù)|正則表達(dá)式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務(wù)器之家 - 編程語言 - Java教程 - datatables 帶查詢條件java服務(wù)端分頁處理實(shí)例

datatables 帶查詢條件java服務(wù)端分頁處理實(shí)例

2020-11-06 21:01絕影A Java教程

本篇文章主要介紹了datatables 帶查詢條件java服務(wù)端分頁處理實(shí)例,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下

使用datatables自帶后臺(tái)查詢

前臺(tái)代碼:

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<link rel="shortcut icon" type="image/ico"
  href="http://www.datatables.net/favicon.ico" rel="external nofollow" >
<meta name="viewport" content="initial-scale=1.0, maximum-scale=2.0">
 
<link rel="stylesheet" type="text/css"
  href="../../js/DataTables-1.10.8/media/css/jquery.dataTables.css" rel="external nofollow" >
<script type="text/javascript" language="javascript"
  src="../../js/DataTables-1.10.8/media/js/jquery.js"></script>
<script type="text/javascript" language="javascript"
  src="../../js/DataTables-1.10.8/media/js/jquery.dataTables.js"></script>
<script type="text/javascript" language="javascript" class="init">
  var table;
$(document).ready(function() {
  table = $('#example').DataTable( {
    "pagingType": "simple_numbers",//設(shè)置分頁控件的模式
     searching: false,//屏蔽datatales的查詢框
     aLengthMenu:[10],//設(shè)置一頁展示10條記錄
     "bLengthChange": false,//屏蔽tables的一頁展示多少條記錄的下拉列表
     "oLanguage": { //對(duì)表格國際化
      "sLengthMenu": "每頁顯示 _MENU_條",
      "sZeroRecords": "沒有找到符合條件的數(shù)據(jù)",
    // "sProcessing": "&lt;img src='./loading.gif' /&gt;",
      "sInfo": "當(dāng)前第 _START_ - _END_ 條 共計(jì) _TOTAL_ 條",
      "sInfoEmpty": "木有記錄",
      "sInfoFiltered": "(從 _MAX_ 條記錄中過濾)",
      "sSearch": "搜索:",
      "oPaginate": {
      "sFirst": "首頁",
      "sPrevious": "前一頁",
      "sNext": "后一頁",
      "sLast": "尾頁"
 
      }
    },
  "processing": true, //打開數(shù)據(jù)加載時(shí)的等待效果
    "serverSide": true,//打開后臺(tái)分頁
    "ajax": {
      "url": "../../alarms/datatablesTest",
      "dataSrc": "aaData",
      "data": function ( d ) {
        var level1 = $('#level1').val();
        //添加額外的參數(shù)傳給服務(wù)器
        d.extra_search = level1;
      }
    },
    "columns": [
      { "data": "total" },
      { "data": "level" }
    ]
 
  } );
} );
 
 
function search1()
{
  table.ajax.reload();
}
 
  </script>
</head>
 
<body class="dt-example">
 
 
  <div>
    <input type="text" id="level1">
    <input type="button" onclick="search1()" value="查詢">
  </div>
 
  <table id="example" class="display" cellspacing="0" width="100%">
    <thead>
      <tr>
        <th>Name</th>
        <th>Position</th>
      </tr>
    </thead>
  </table>
 
 
 
</body>
</html>

Java代碼如下,使用spring的 @ResponseBody將結(jié)果轉(zhuǎn)換成json格式返回給前臺(tái)

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
@RequestMapping(value="/datatablesTest", method=RequestMethod.GET)
  @ResponseBody
  public DatatablesViewPage<Alarm> datatablesTest(HttpServletRequest request){
//獲取分頁控件的信息
    String start = request.getParameter("start");
    System.out.println(start);
        String length = request.getParameter("length");
    System.out.println(length);
//獲取前臺(tái)額外傳遞過來的查詢條件
    String extra_search = request.getParameter("extra_search");
    System.out.println(extra_search);
        //隨便組織的查詢結(jié)果
    List<Alarm> list = new ArrayList<Alarm>();
    Alarm alarm = new Alarm();
    alarm.setLevel(1);
    alarm.setTotal(100L);
    list.add(alarm);
    alarm = new Alarm();
    alarm.setLevel(2);
    alarm.setTotal(100L);
    list.add(alarm);
 
 
    DatatablesViewPage<Alarm> view = new DatatablesViewPage<Alarm>();
    view.setiTotalDisplayRecords(100);
    view.setiTotalRecords(100);
 
    view.setAaData(list);
    return view;
  }

DatatablesViewPage的聲明如下:

?
1
2
3
4
5
6
7
8
9
10
11
public class DatatablesViewPage<T> {
 
  private List<T> aaData; //aaData 與datatales 加載的“dataSrc"對(duì)應(yīng)
  private int iTotalDisplayRecords;
  private int iTotalRecords;
  public DatatablesViewPage() {
 
  }
//get set方法 此處省略
 
}

在后臺(tái)傳輸數(shù)據(jù)也可以用fastjson ;

?
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
@ResponseBody
  @RequestMapping("/datatable2")
  public JSON getTable2(String aoData){
    String sEcho = "";// 記錄操作的次數(shù) 每次加1
    String iDisplayStart = "";// 起始
    String iDisplayLength = "";// size
    String sSearch = "";// 搜索的關(guān)鍵字
    int count = 1 ; //查詢出來的數(shù)量
    JSONArray alldata = JSON.parseArray(aoData);
    for (int i = 0; i <alldata.size() ; i++) {
      JSONObject obj = (JSONObject) alldata.get(i);
      if (obj.get("name").equals("sEcho"))
        sEcho = obj.get("value").toString();
      if (obj.get("name").equals("iDisplayStart"))
        iDisplayStart = obj.get("value").toString();
      if (obj.get("name").equals("iDisplayLength"))
        iDisplayLength = obj.get("value").toString();
      if (obj.get("name").equals("sSearch"))
        sSearch = obj.get("value").toString();
    }
    DataTableModel u1 = new DataTableModel();
    u1.setFirst_name("Airi");
    u1.setLast_name("Satou");
    u1.setPosition("Accountant");
    u1.setOffice("Tokyo");
    u1.setStart_date("28th Nov 08");
    u1.setSalary("$162,700");
 
    Map<String,Object> listMap = new HashMap<String, Object>();
    List<DataTableModel> list = new ArrayList<DataTableModel>();
    list.add(u1);
    listMap.put("iTotalRecords",count);
    listMap.put("sEcho",Integer.parseInt(sEcho)+1);
    listMap.put("iTotalDisplayRecords",count);
    listMap.put("aaData",list);
    return (JSON)JSON.toJSON(listMap);
  }

以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持服務(wù)器之家。

原文鏈接:http://blog.csdn.net/lllliulin/article/details/51193004

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 久热人人综合人人九九精品视频 | 亚洲欧美日韩综合在线播放 | 无删减影视免费观看 | 俄罗斯三级完整版在线观看 | 192.168.191 | 免费观看一级特黄三大片视频 | 我的好妈妈7中字在线观看韩国 | 亚洲人和日本人hd | 欧美精品久久久久久久影视 | 国产精品久久久久久久久ktv | 亚洲成年网站在线777 | 天天做日日做天天添天天欢公交车 | 成人免费播放器 | 日本私人影院 | 国产在线伊人 | 国产美女在线一区二区三区 | 日本艳鉧动漫1~6在线观看 | 明星乱淫| 国产综合久久 | 国产在线观看一区 | 国产成人综合一区精品 | 青青青青青国产费线在线观看 | 成人在线视频国产 | 欧美性受xxxx88喷潮 | 精品亚洲视频在线观看 | 好吊色永久免费视频大全 | swag最新正在播放 | chinese国产老太性 | 国产caoni555在线观看 | 亚洲成人综合在线 | 久久内在线视频精品mp4 | 俄罗斯女人与公拘i交酡 | 天天av天天翘天天综合网 | 果冻传媒在线播放1 | 天天舔天天射 | 男女做性视频 | 护士xxxx| 日本人啪啪 | 国内精品免费 | 精品推荐国产麻豆剧传媒 | 亚洲一区二区精品视频 |