0
當我正在尋找在Servlet之間共享資源(如DataSource)的方法時,大多數時候都使用ServletContextListener。這是共享資源的標準方式嗎?還是有其他選擇?ServletContext是Servlet之間共享資源的首選方式嗎?
當我正在尋找在Servlet之間共享資源(如DataSource)的方法時,大多數時候都使用ServletContextListener。這是共享資源的標準方式嗎?還是有其他選擇?ServletContext是Servlet之間共享資源的首選方式嗎?
這取決於您的要求。但是,您可以創建一個存儲庫,例如用於保存資源的單例對象,其中只有一個實例存在於整個JVM中。此外,由於併發問題,使用servletcontext獲取示例數據源的資源實例不是一個好習慣。對於數據資源,我會使用JNDI資源,並讓容器(tomcat或應用程序服務器)管理這些資源,就像任何其他服務對象(例如DAO)一樣。 Spring使用所有服務bean所在的應用程序上下文來解決這些問題。您需要在此上下文中將服務對象定義爲bean,並且可以在控制器,攔截器等中注入這些對象(請參閱依賴關係注入 - CDI),並在這些對象中使用不同的策略。