我使用Java創建一個Web應用程序。我很新的這一點,我有以下問題:初學者查詢有關的Java Web應用程序
我
jsp
文件前端。現在,無論何時我必須做一個龐大的後端函數,我都可以創建一個servlet並從jsp獲取請求,或者我可以創建一個簡單的java對象,在jsp中實例化它並將其用於支持的函數。 哪一個更好?爲什麼?每個後端功能需要連接到數據庫。我想只爲整個會話的用戶和所有
jsp
頁面執行一次。它是如何完成的?
我使用Java創建一個Web應用程序。我很新的這一點,我有以下問題:初學者查詢有關的Java Web應用程序
我jsp
文件前端。現在,無論何時我必須做一個龐大的後端函數,我都可以創建一個servlet並從jsp獲取請求,或者我可以創建一個簡單的java對象,在jsp中實例化它並將其用於支持的函數。 哪一個更好?爲什麼?
每個後端功能需要連接到數據庫。我想只爲整個會話的用戶和所有jsp
頁面執行一次。它是如何完成的?
問題1:
如果不需要的servlet爲什麼要用它?只需在一個普通的Java類中完成笨重的工作。通過這種方式,您將在您的工作流程中擁有更少的依賴性。
問題2:
大多數應用服務器現在已經建立了連接池的支持。強烈建議您使用此功能。現在,你有很多方法可以繼續前進。最簡單的和IMO最好的方法是創建一個數據庫相關的對象,它將處理連接打開/關閉,執行更新/刪除/選擇功能,並通過你的應用程序使用這個
這兩個的都不是。閱讀關於MVC模式。使來自瀏覽器的每個請求都轉到servlet。使這個servlet調用服務的後端,並填充存儲在請求屬性中的Java Bean。然後將請求分派給JSP。 JSP的唯一職責應該是從請求中的bean中獲取數據並生成頁面的HTML標記(藉助JSTL和自定義標記,無腳本)。
數據庫連接不應被保留給單個用戶。如果您有1000個併發用戶每30秒執行一次請求,則您需要1000個連接,大部分時間保持空閒狀態。這不僅僅是數據庫可以支持的,而且這些連接可能會超時或失敗。閱讀關於連接池的信息,然後使用一個:每個需要連接的請求都從池中獲取一個請求,完成它的工作,然後關閉連接,實際上將連接返回到它所來自的池中,以準備爲另一個請求提供服務。
用於術語數據庫連接,我實際上使用用戶憑據連接到web服務,所以我需要爲每個用戶執行一次 – vishesh
我不知道是否有人能給出一個明確的前面回答了這個問題。這兩點比編程問題更像軟件架構問題,每個架構都有其優點和缺點。 「連接到數據庫」還取決於您使用的數據庫,通常該應用程序只連接一次數據庫,而不是用戶本身。我會建議編寫一些示例應用程序,以瞭解您認爲哪種方式最好。當你有更具體的問題時,我們能夠更好地幫助你。 – Uooo