
你看就是先导入文件,然后导入文件之后配置呃门卫,
然后配置maven完成之后,然后就连接数据库连接完成之后,
然后配置tomato配置完之后点开启动项目的时候,然后就没常运行一点,然后直接爆红,然后项目就始终还是运行不起来
我个人感觉可能是tomato配置出现了问题

关注【相关推荐】
打破双亲委派机制需要重写ClassLoader中的双亲委派方法loadClass()

打破双亲委派机制代码:
protected Class<?> loadClass(String name, boolean resolve)
throws ClassNotFoundException
{
synchronized (getClassLoadingLock(name)) {
// First, check if the class has already been loaded
Class<?> c = findLoadedClass(name);
if (c == null) {
long t0 = System.nanoTime();
if (c == null) {
long t1 = System.nanoTime();
//如果不是这个包下的类,比如Object,使用 自定义类加载器的父亲 >> 应用类加载器,双亲委派
if(!name.startsWith("com.chinalife.policy_manage.user.entity")){
c = this.getParent().loadClass(name);
}else {
//如果是这个包下的类 ,比如User,打破双亲委派机制
c = findClass(name);
}
// this is the defining class loader; record the stats
sun.misc.PerfCounter.getParentDelegationTime().addTime(t1 - t0);
sun.misc.PerfCounter.getFindClassTime().addElapsedTimeFrom(t1);
sun.misc.PerfCounter.getFindClasses().increment();
}
}
if (resolve) {
resolveClass(c);
}
return c;
}
}
5.1 打破双亲委派机制的应用:tomcat
以Tomcat类加载为例,Tomcat 如果使用默认的双亲委派类加载机制行不行?答案是不行的。为什么?
spring4,另外一个应用依赖的spring5。spring4和spring5底层也会依赖大量相同得类,如果按照以前的双亲委派机制,这些相同的类只能存在一份,如果被加载的是spring4的类,那么当spring5去使用某个类时,只能加载到spring4的类,那就可能丢失了spring5中对这个类的扩展功能。因此要保证每个应用程序的类库都是独立的,保证相互隔离。所以tomcat需要打破双亲委派机制如果使用默认的类加载器机制,那么是无法加载两个相同类库的不同版本的,默认 的类加器是不管你是什么版本的,只在乎你的全限定类名,并且只有一份。
5.2 Tomcat自定义加载器详解

如上图所示: