當前位置:網站首頁>關於初始化page入參的設計思路

關於初始化page入參的設計思路

2022-07-23 15:58:55蝸牛使勁沖

最近在重構老的代碼,在寫的過程中發現之前的邏輯如果遇到沒有入參pageNo會Npe,於是乎我想找找公司項目有啥方式處理page入參的有兩種如下

  1. 使用三元錶達式直接判斷是否null,然後賦值
  2. 使用mapStruct賦值初始化AO

但是我感覺這兩種都有點麻煩,我想的要是隨用隨生成初始化的page參數就好了,於是有了以下設計

新建個BaseDTO用來被繼承

@Data
public class BasePageDTO {
    
    private Integer pageNo;
    private Integer pageSize;
}

再把你的dto繼承這個BaseDTO,因為代碼規範規定不能在bean裏面直接賦值屬性的默認值,所以我們的dto在繼承BasePageDTO後需要經過一步加工,我新建了一個PageUtil工具類,代碼如下

@Component
public class PageUtil {
    

    public static void buildPage(BasePageDTO pageDTO){
    
        if (Objects.isNull(pageDTO.getPageNo())){
    
            pageDTO.setPageNo(1);
        }
        if (Objects.isNull(pageDTO.getPageSize())){
    
            pageDTO.setPageSize(20);
        }
    }
}

最後在我需要初始化page參數時候直接調用下這個方法,page參數就好啦
在這裏插入圖片描述

版權聲明
本文為[蝸牛使勁沖]所創,轉載請帶上原文鏈接,感謝
https://cht.chowdera.com/2022/204/202207231132280051.html

隨機推薦