《深入理解Java虚拟机》读书笔记八
第九章 類加載及執行子系統的案例與實戰
Q:如果有10個WEB應用程序都是用Spring來進行組織管理的話,可以把Spring放到Common或Shared目錄下(Tomcat5.0)讓這些程序共享。Spring要對用戶程序的類進行管理,自然要能訪問到用戶程序的類,而用戶程序顯然是放在/WEB-INF目錄中的。那么被CommonClassLoader或SharedClassLoader加載的Spring如何訪問并不在其加載范圍內的用戶程序呢?
A:使用線程上下文類加載器來實現的,spring加載類所用的classloader都是通過Thread.currentThread().getContextClassLoader()來獲取的,而當線程創建時會默認 setContextClassLoader(AppClassLoader),即spring中始終可以獲取到這個AppClassLoader(在tomcat里就是WebAppClassLoader)子類加載器來加載bean,以后任何一個線程都可以通過getContextClassLoader()獲取到WebAppClassLoader來getbean了
參考博客鏈接:
代理參考https://www.cnblogs.com/AmyZheng/p/9264215.html
https://blog.csdn.net/u013678930/article/details/51995251
轉載于:https://www.cnblogs.com/AmyZheng/p/10550796.html
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的《深入理解Java虚拟机》读书笔记八的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Deployment descripto
- 下一篇: 以太坊solidity编程常见错误(不定