1. 程式人生 > >spring controller接口中,用pojo對象接收頁面傳遞的參數,發現spring在對pojo對象賦值時,有一定順序的問題

spring controller接口中,用pojo對象接收頁面傳遞的參數,發現spring在對pojo對象賦值時,有一定順序的問題

根據 自動 nbsp pojo spring ron 接口 () size

1、我的項目中的實體類都繼承了基類entityBase,裏面封裝了分頁的一些屬性,pageindex、pagesize、pagerownum等。

2、思路是頁面可以靈活的傳遞分頁參數,比如當前頁pageindex=1、每頁總數pagesize=6等靈活請求數據。然後可以根據當前頁pageindex的賦值,來自動的計算出

mysql的分頁 limit pagerownum,pagesize中,從第幾行開始pagerownum的值。

技術分享圖片

技術分享圖片

3、問題就出在這裏,我的接口是用pojo對象來接收頁面傳遞的參數的,頁面每次傳參的話,spring都會先對pageindex屬性進行賦值,

pagesize參數在其後面才會賦值,這樣就導致了indexrownum(從第幾條開始)的值是錯誤的,

4、打比方接口傳遞了參數為:"xxxx?pageindex=2&pagesize=4",那麽在pageindex屬性會被最先賦值的情況下,pagesize的初始值是10,那麽

技術分享圖片後,indexrownum的值就是10了。

而不是理想中的從第8條開始。最後才會對pagesize進行賦值,而這時候indexrownum的值已經賦值完成了。

解決辦法就是在setIndexsize()方法裏也同樣的來對indexrownum賦值一遍。這樣就保證了無論spring是先對pageindex賦值,還是pagesize,最後

都可以達到想要的正確分頁開始條數indexrownum

技術分享圖片

spring controller接口中,用pojo對象接收頁面傳遞的參數,發現spring在對pojo對象賦值時,有一定順序的問題