第九章 类加载及执行子系统的案例与实战

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

最新文章

  1. ubuntu修改163软件源
  2. HTML5学习总结
  3. 解压缩c#
  4. poj 3734 Blocks 快速幂+费马小定理+组合数学
  5. WPF自定义窗口基类
  6. appframework(jqmobi) 3.0 设置
  7. JS settimeout 使用笔记
  8. Mac下修改环境变量
  9. pip报ssl错误解决
  10. leetcode 109 Convert Sorted List to Binary Search Tree ----- java
  11. Web请求响应简单整理
  12. 网页加载速度优化2--先加载css,然后再加载js文件。
  13. Java笔记(十二)……类中各部分加载顺序及存放位置问题
  14. uva 1596 Bug Hunt
  15. 原生js动态改变dom高度
  16. MongoDB中的MapReduce介绍与使用
  17. 安装cocoa pods时出现Operation not permitted - /usr/bin/xcodeproj的问题
  18. 机器学习基石:14 Regularization
  19. VSC 解决红底线问题
  20. BUAA Summer Practice 2017 #1 字符串专场

热门文章

  1. 基于 React 实现一个 Transition 过渡动画组件
  2. Caliburn.Micro框架之Action Convertions
  3. HTML速查
  4. MySQL 8 升级数据库
  5. R语言入门:向量初探
  6. Java中顺序、并行与并发
  7. CSS 如何实现当鼠标放在上面时整行变色呢?
  8. EasyUI笔记(二)Layout布局
  9. egg 提交数据 防csrf 攻击 配置
  10. Wannafly Winter Camp 2020 Day 6G 单调栈 - 贪心