当前位置: 代码迷 >> Java Web开发 >> Tomcat类加载解决办法
  详细解决方案

Tomcat类加载解决办法

热度:103   发布时间:2016-04-17 17:07:38.0
Tomcat类加载
tomcat有5个web项目,其他象commons-beanutils.jar,dom4j-1.4.jar等类,是放在tomcat的/common/lib下还是每个web项目下合理?
如果放在每个下面,是不是会每个下面都加载而导致占用更多的内存


总是发现内存OUT,是什么好方法检测,看日志看不出来

------解决方案--------------------
回答第一个问题:
关键就是搞清java的classloader. 每个web-app都有一个独立的classloader,在启动的时候,会以WEB-INF/lib/, tomcat/shared/lib/, tomcat/commom/lib/的顺序载入包,然后再载入classpath中的classes.
很明显,jar包放在common/lib中的时候,每个web-app都会加载到它.如果这个包并不是很web-app都要用到的话,最好把它在各自的web-app下.放在common/lib下反而会战用更多的内存.
  相关解决方案