0
我做了一些邏輯,使數據庫實例和創建架構和表運行。 這些邏輯包含在Web應用程序文件(war)中。如果我把戰爭放到一個特定的容器中,然後啓動servlet容器來加載Web應用程序上下文,我希望在沒有創建實例時運行這個邏輯。我怎樣才能做到這一點?請給一些複雜的解釋..關於加載spring beans,如何捕獲最初加載的bean?
在此先感謝:)
我做了一些邏輯,使數據庫實例和創建架構和表運行。 這些邏輯包含在Web應用程序文件(war)中。如果我把戰爭放到一個特定的容器中,然後啓動servlet容器來加載Web應用程序上下文,我希望在沒有創建實例時運行這個邏輯。我怎樣才能做到這一點?請給一些複雜的解釋..關於加載spring beans,如何捕獲最初加載的bean?
在此先感謝:)
利用ServletContainerInitializer.onStartUp如果你是的Servlet 3.X或使用ServletContextListener.contextInitialized如果Servlet的2.X。
在相應方法的實現中,調用您希望在之前執行的自定義設置,以初始化/啓動Web應用程序。
有關示例代碼,請參閱here。
感謝您的提示。但就我而言,我使用gretty gradle插件來製作war文件並扮演servlet容器的角色。我確認了在war中有實現類的META-INF/services/javax.servlet.ServletContainerInitializer。但是servlet容器沒有註冊ServletContainerInitialzer。 – verystrongjoe