我當前的設計模式在單個便利類中包含大量數據庫訪問方法。當它被實例化時,它抓住它需要的連接並等待方法。便捷類中的關閉連接
這是我的想法,打開一個單一的連接,當我要運行10個方法與該連接將比打開和關閉10個單獨的方法中的每一個更好。
但是,我意識到我不關閉任何這些連接。我得出的結論是,我必須返回並重構所有對該方法的調用,以包含將釋放所有活動連接的方法closeConnections
。
我的問題是這樣的: 我應該打開並在每一個方法有着密切的聯繫,遵循良好的設計實踐(將在招致顯著的開銷),或者我應該重構爲一個closeConnections
方法調用與調用方便的類
僞碼
class convenience{
public contructor(){
a = new Connection();
}
public void methodA(){
/* do stuff */
}
public void methodB(){
/* do stuff */
}
public void methodC(){
/* do stuff */
//should I do this?
a = new Connection();
/* do stuff */
a.close();
}
public void close(){
//or this
a.close();
}
}
在進行便捷方法調用時可以傳遞連接對象嗎? – 2012-04-18 18:18:30
這是我最初的設計實現。我有一個單一的連接,在所有的班級之間共享,真正被濫用。我用需要的基礎上打開/關閉連接取代了這種連接,以抵制網絡中斷。 – EricR 2012-04-18 18:20:53