hjr-JAVA:一種基於基類的後臺架構

以前經常用三個包,controller,service,impl,model寫java後臺
model存放各種數據模型,service存放每個模型對應的服務接口,impl存放每個服務的實現,controller存放路由與邏輯。
現在使用基類的方式,只保留model和controller

model

首先,新建一個Baseinfo,存放一些通用的字段與對應的getter、setter,字段有id,創建時間,修改時間,是否禁用等,也可放通用的方法。如把所有字段轉化爲map的toMap方法。
之後的所有model都繼承Baseinfo。

//父類
    Map<String, Object> updateMap = new HashMap<String, Object>();
    public Map<String, Object> toMap() {
        updateMap.put("createdTime", this.getCreatedTime());
        updateMap.put("createdName", this.getCreatedName());
        return updateMap;
    }
//子類
    public Map<String, Object> toMap() {
        updateMap =  super.toMap();
        updateMap.put("realname", this.getRealname());
        updateMap.put("username", this.getUsername());
        return updateMap;
    }

controller

控制器也建一個Basecontroller,存放操作SQL的實例,然後寫增刪改查分頁等方法,其中比較關鍵的有兩點
1. Class clazz這個參數
2. public class BaseController <T extends Baseinfo>{}model需要繼承Baseinfo作爲參數傳入,之後需要傳入Modle參數的地方都用t代替。
子類控制器,先寫上Class clazz = User.class;之後把clazz作爲參數傳入BaseController並調用其方法。

業務>MVC

當業務很多的時候,先根據業務分包,每個包裏面一個自己的MVC,而不是三個MVC包,每個包裏面很多業務的控制器服務

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章