好吧,我正在設計一個獨立的Web服務(使用RestLET作爲我的框架)。我的應用程序被分成在〜3層:如何在應用程序中組織和管理多個數據庫憑證?
- 數據層(就在數據庫的上方,提供API用於連接/查詢數據庫,和一個數據庫對象)
- 對象層(負責串行化從數據層...提供客戶端層可以使用的對象而不用擔心數據庫)
- 客戶端層(該層是RestLET Web服務...基本上只是從對象層創建對象並實現web服務請求)
現在,對於我在對象層中創建的每個對象,我想使用不同的憑據(這樣我可以對每個對象進行沙箱...)。對象層不應該知道確切的憑據(IE登錄/ pw/DB URL等)。
什麼是最好的管理方式?我在想,我的數據層應該有一個超級類型的數據庫對象......並且每個子類都將包含所需的登錄信息......這樣,我的對象層可以去Database db = new SubDatabase();
,然後繼續使用該數據庫。
在客戶端級別,他們只能去ItemCollection items = new ItemCollection();
,並且不知道/控制連接的數據庫。
我在問這是因爲我試圖讓我的平臺具有可擴展性,以便其他人可以輕鬆地從我的平臺上創建服務。
如果任何人有這些建築問題或如何的經驗來管理這樣的事情我會很感激任何見解或意見...
隨意問的問題,如果這是令人困惑的。謝謝!
我的平臺是Java,我使用的REST框架是RestLET,我的數據庫是MySQL。
如果您使用Spring或任何應用程序服務器,則可以分別配置bean和數據源。您的DAO可以注入或查找相同的內容。如果你編程接口,而不是使用任何數據庫特定的功能,那麼它會正常工作。 – saugata 2010-03-11 05:42:00