有一個沒有具體解決方案的類似線程,我認爲最好開始一個新的。如何將單用戶WebApp擴展到多個用戶
我面臨的一個情況我有一個Web應用程序樹脂託管(就像Tomcat的我猜的)。到目前爲止,我一直在使用db4o開發應用程序,因爲我一個人,我需要儘快完成應用程序,我有一個數據庫的用戶和另一個數據庫爲單個用戶(我)的應用程序數據,現在該應用程序幾乎完成我即將轉向postgresql,並且我正在認真考慮每個用戶的數據庫,即使數據庫爲多個應用程序保存數據,因爲它會處理一些機密數據,我認爲單獨的數據庫將是最好的(安全方面)。已經有一個基本的會話管理,在瀏覽器中存儲用戶數據,如ID。但我想知道如何將它擴展到多個用戶/分貝。
我想擴大監聽器類,保持情境數據以正確的db對象傳遞給應用程序實例,或可能設定爲目的的過濾器。
.UPDATE。
我想給我一些更多的見解,我目前有什麼。
我有:保存到某些對象的引用
上下文,這些對象中的一個連接到DB併爲用戶和密碼檢查。
演示的servlet(HttpServlet的)映射爲 「/」,其具有的登錄形式POST到/登錄。
映射到「/ login」的登錄servlet(HttpServlet),它檢查httpSession用戶密碼屬性是否針對Context中所駐留的相應對象,如果有匹配則設置保存USERID並將用戶重定向到的httpSession屬性應用程序本身位於/index-debug.html,如果不是,它會再次創建一個帶有登錄表單的新頁面。
映射到/index-debug.html的授權和驗證過濾器驗證用於USERID屬性的httpServletRequest,並檢查用戶是否有權訪問該應用程序。
最後是一個負責讀寫webApp用戶數據數據庫的數據庫bean。當我在webApp中執行某種方法時,CP2JAVAWS將該方法與該bean中的相應方法進行匹配,問題是此bean具有靜態數據庫,並且迄今爲止它只允許一個用戶。
我想要做的就是以某種方式讓這個DB豆到每個用戶實例化一次,讀取和存儲根據當前登錄用戶的相應數據。
每個用戶一個數據庫的想法目前已被丟棄,但我不知道該如何解決這個問題。
非常感謝,它基本上補充了ryan1234所做的答案。謝謝你們倆。 – Jigzat 2013-04-30 17:20:21