第九章 設計模式 抽象工廠模式

2021-10-10 12:19:12 字數 1732 閱讀 7727

抽象工廠模式(abstract factory pattern)是圍繞乙個超級工廠建立其他工廠。該超級工廠又稱為其他工廠的工廠。這種型別的設計模式屬於建立型模式,它提供了一種建立物件的最佳方式。

主要解決:主要解決介面選擇的問題。

何時使用:系統的產品有多於乙個的產品族,而系統只消費其中某一族的產品。

如何解決:在乙個產品族裡面,定義多個產品。

優點:當乙個產品族中的多個物件被設計成一起工作時,它能保證客戶端始終只使用同乙個產品族中的物件。

缺點:產品族擴充套件非常困難,要增加乙個系列的某一產品,既要在抽象的creator裡加**,又要在具體的裡面加**。

在不同的資料庫中新增使用者,如mysql和oracle

第一步:建立乙個用使用者介面,增加對應的操作方法

package com.oysept.abstractfactory;

public inte***ce iuser

第二步:建立乙個在mysql中新增使用者工具類

package com.oysept.abstractfactory;

public class mysqluser implements iuser

}

第三步:建立乙個在oracle中新增使用者工具類

package com.oysept.abstractfactory;

public class oracleuser implements iuser

}

第四步:建立乙個抽象工廠類

package com.oysept.abstractfactory;

public abstract class ifactory

第五步:建立乙個mysql操作工廠類

package com.oysept.abstractfactory;

public class mysqlfactory extends ifactory

}

第六步:建立乙個oracle操作工廠類

package com.oysept.abstractfactory;

public class oraclefactory extends ifactory

}

第七步:增加乙個工廠製造者,傳入相應的型別,就獲取對應的工廠

package com.oysept.abstractfactory;

public class factoryproducer else if ("oracle".equalsignorecase(datatype)) else }}

第八步:測試

《Hive權威指南》第九章 模式設計

9.9 幾乎 總是使用壓縮 hive看上去與實際操作都像乙個關係型資料庫,但是事實上hive是反模式。對於資料集增長很快的情況,可以使用這種方式,在表名中加入乙個時間戳,例如upply 2020 05 20 upply 2020 05 21等。當然對於hive,這種情況應該使用分割槽表。hive通過...

第九章(筆記)

轉移指令是可以修改ip,或同時修改cs和ip的指令 offset 是用於提取標號偏移位址的操作符 jmp在第2章裡說到時用於修改ip或同時修改cs和ip的轉移指令,這章裡單獨的jmp指令是乙個無條件的轉移指令 jmp short 標號 是實現段內短轉移 jmp near ptr 標號 是實現段內近轉...

第九章作業

班級 0401304 學號 2013211526 姓名 鄧小俊 2.身份驗證 依據使用者所提供的身份資訊,來進行登入驗證,可以再細分為使用者是否可以登入sql sever 使用者是否可以登入到指定的目標資料庫等。授權 已通過身份驗證的使用者,檢查其所被賦予的許可權,是否可以訪問或者執行目標的物件 3...