拆分過程,提取方法再抽象

2021-09-01 06:45:39 字數 834 閱讀 2071

[size=medium][b]閒言碎語不要講,直接寫

比如a b兩張表,欄位不一樣,儲存的結果一樣,但是另一張表有些特殊處理,比如a表為空,b表則存為特殊預設值,a表的時間,在b表示特殊字串[/b][/size]

[size=medium]

分析首先想到的應該是介面卡方式--

手機充電需要5v電壓,但是現在資料是220v,但現在不是呼叫的轉換,是需要資料轉換,把a表資料全部同步到b表,不是介面的問題是資料格式不匹配的問題.

那麼轉換方式是重點了,為了達到重用性,把相關過程拆分出來,形成策略.統一的處理方式在頂層封裝,模板方式必選

那麼轉換這兩張表,直接寫就ok,裡面包含了

1.從a表取資料

2.把a表資料資料進行特殊處理

3.在插入b表中

如果需求發生變化,比如預設值現在要重新修改,比如一些特殊的型別要進行處理,b表字段名稱改變怎麼樣,換個人來改怎麼樣,時間流逝再改怎麼樣.

開啟這個方法改就可以了,但是他要讀懂你的過程,甚至他覺得不爽,直接重新寫,反正也不難嘛.

如果拆分抽取在抽象,會是怎麼樣呢?

一:這個大過程,被拆分成了四個方法

1.獲取a表資料集

2.a表與b表字段對應處理,返回對應結果集

3.a表資料特殊處理(在額外寫乙個map,封裝預設值處理)

4.乙個總方法負責組合前三個方法

二:寫乙個抽象類

上面的前三個方法抽象,第四個方法實現.負責總的呼叫,好吧,就叫模板方法模式吧,其實這個不重要

**反應設計,充當文件,反應了詳細的流程是可以的,這就是我感覺的敏捷之一,首先必須**容易讀懂,經得起變化,這個變化是人員流失,需求改變[/size]

Hbase region 的切分過程

需根據hbase的目錄結構來分析,該過程完成迅速,只是在為region建立兩個引用檔案,每個持有原region的一半 hbase將整個切分過程包裝成了乙個事務,意圖能夠保證切分事務的原子性。首先regionserver在父region下建立切分目錄,當建立成功後會關閉該region 在切分目錄下建立...

DBUtil封裝JDBC部分過程

管理資料庫連線 在軟體中資料庫連線使用非常頻繁,如果每次都建立連線,就會造成 的大量冗餘,常規的做法是建立資料庫連線工具類,封裝資料庫連線過程,同意資料庫連線過程,使用時候就可以簡化 dbutil處理jdbc的過程,發現一些 是經常需要重複呼叫的,例如與資料庫的連線過程,所以做了以下封裝過程。其中丟...

sql 陣列拆分,行轉列,字段提取

問題背景 某一列資料 格式為 需要提取出 word對應的單詞,且轉為多行.方法陣列拆分split函式 lateral view explode get json object 注意 lateral veiw explode 的列名 不能與 as 後重新命名的列名相同.po plode用途 將一行資料...