日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 综合教程 >内容正文

综合教程

Java怎么使用Queryable-pageable实现分页效果

發布時間:2023/12/19 综合教程 31 生活家
生活随笔 收集整理的這篇文章主要介紹了 Java怎么使用Queryable-pageable实现分页效果 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

這篇“Java怎么使用Queryable-pageable實現分頁效果”文章的知識點大部分人都不太理解,所以小編給大家總結了以下內容,內容詳細,步驟清晰,具有一定的借鑒價值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來看看這篇“Java怎么使用Queryable-pageable實現分頁效果”文章吧。

在維護老項目的時候需要對部分分頁進行手動修改、方式是獲取前端的分頁參數page以及rows、new PageRequest對象把分頁參數傳進去、通過queryable.setPageable(pageable);保存、最后進行調用。

完整代碼如下:

@ResponseBody
@RequestMapping(value="getLbjzkList",method=RequestMethod.GET)
@PageableDefaults(sort="id=desc")
privatevoidajaxList(Queryablequeryable,PropertyPreFilterablepropertyPreFilterable,HttpServletRequestrequest,
HttpServletResponseresponse)throwsIOException{
EntityWrapper<LbjZk>entityWrapper=newEntityWrapper<LbjZk>(entityClass);
propertyPreFilterable.addQueryProperty("id");
propertyPreFilterable.addQueryProperty("name");
Integerpage=Integer.parseInt(request.getParameter("page").toString());
Integerrows=Integer.parseInt(request.getParameter("rows").toString());

//預處理
queryable.setPageable(newPageRequest(page,rows));
QueryableConvertUtils.convertQueryValueToEntityValue(queryable,entityClass);
SerializeFilterfilter=propertyPreFilterable.constructFilter(entityClass);
PageJson<LbjZk>pagejson=newPageJson<LbjZk>(lbjZkService.list(queryable,entityWrapper));
Stringcontent=JSON.toJSONString(pagejson,filter);
StringUtils.printJson(response,content);
}

PageJson分頁工具類:

packagecom.railway.core.model;

importjava.io.Serializable;
importjava.util.List;

importcom.railway.core.query.data.Page;

/**
*頁面展示分頁
*
*@authorlyy
*
*@param<T>
*/
publicclassPageJson<T>implementsSerializable{
	privatestaticfinallongserialVersionUID=1L;
	privatelongpage=1;//當前頁
	privatelongrows=10;//每頁顯示記錄數
	privatelongtotal;//總數
	privatelongtotalPages;//總頁數
	privateList<T>results;//結果

	publicPageJson(){

	}

	publicPageJson(List<T>results){
		this(0,Long.MAX_VALUE,Long.MAX_VALUE,results);
	}

	publicPageJson(Page<T>page){
		this(page.getNumber(),page.getSize(),page.getTotalElements(),page.getContent());
	}

	publicPageJson(longpage,longrows,longtotal,List<T>results){
		this.page=page;
		this.rows=rows;
		this.total=total;
		this.results=results;
		this.totalPages=getRows()==0?1:(int)Math.ceil((double)total/(double)getRows());
	}

	publiclonggetPage(){
		returnpage;
	}

	publicvoidsetPage(longpage){
		this.page=page;
	}

	publiclonggetRows(){
		returnrows;
	}

	publicvoidsetRows(longrows){
		this.rows=rows;
	}

	publiclonggetTotal(){
		returntotal;
	}

	publicvoidsetTotal(longtotal){
		this.total=total;
	}

	publiclonggetTotalPages(){
		returntotalPages;
	}

	publicList<T>getResults(){
		returnresults;
	}

	publicvoidsetResults(List<T>results){
		this.results=results;
	}

}

總結

以上是生活随笔為你收集整理的Java怎么使用Queryable-pageable实现分页效果的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。