Spring テーブルのページング実装
Springboot + Thymeleaf + JQuery DataTablesで一覧表示する場合
ページングの機能を実装する場合にはJQuery DataTables
が簡単に実装できる.
ただ,大きく2つやり方があり,
サーバサイド側でテーブルに必要なデータを全て直接viewに渡し,thymeleafで描画.それに対して,datatablesでソートやページング機能を付与
サーバ側はデータを渡すapiのみ提供.DataTables側でajax呼び出し
1の場合は通常のthymeleafのテーブルのやり方にdatatablesを付けるだけなので,とても簡単.ただし,サーバ側は全てのデータを渡し,フロント側のdatatablesに任せなければいけないため,データが大きくなると,読み込みが重くなる.
2の場合はdatatablesから渡される,ソート,検索,ページングの状態データのマッピング処理と,それぞれに対応したapi作成をしなければならないため,実装が面倒.しかし,渡すデータはajaxでページングの状態の一部分ずつなので,読み込みは軽くなる.