您好,登錄后才能下訂單哦!
本篇內容介紹了“Servlet容器與Context怎么使用”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
Servlet容器啟動創建了許多對象,如Servlet,filter,listener,spring等等那么如何使用這些對象呢?
下面介紹在Servlet(或者Filter,或者Listener)中使用spring的IOC容器默認情況下Servlet容器創建spring容器對象,注入到Servlet Context中,Servlet Context對象又是注入到session對象中,session對象又是注入到request對象中,request對象又是注入到Servlet對象中,(其實不是很標準的注入,是傳參數,或者對屬性直接付值)。層層依賴可以得到spring容器對象。
WebApplicationContext webApplicationContext = WebApplicationContextUtils.
getWebApplicationContext(request.getSession().getServletContext());
所以可以直接在Servlet Context取出Web Application Context對象:
WebApplicationContext webApplicationContext = (WebApplicationContext)
servletContext.getAttribute(WebApplicationContext.
ROOT_WEB_APPLICATION_CONTEXT_ATTRIBUTE);
事實上Web Application ContextUtils.getWebApplicationContext方法就是使用上面的代碼實現的,建議使用上面上面的靜態方法
注意:在使用web Application Context.getBean("ServiceName")的時候,前面強制轉化要使用接口,如果使用實現類會報類型轉換錯誤。如:
LUserService userService = (LUserService)
webApplicationContext.getBean("userService");
“Servlet容器與Context怎么使用”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注億速云網站,小編將為大家輸出更多高質量的實用文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。