首先,Tomcat的启动核心进程介绍了Tomcat中生命周期的设计。掌握了这个核心流程,对我们分析Tomcat很有帮助,就是需要创建相关的核心组件,比如服务器、服务,这些都是无法避免生命周期的。
1.启动入口你可以通过脚本启动Tomcat服务(startup.bat),但是如果你看过脚本的命令,你会发现Bootstrap中的main方法最后被调用,所以我们需要从main方法开始。
然后我们来看看main方法中的代码。我们需要关注三种方法。
Bootstrap.init()方法、load()方法和start()方法将在这三个方法中完成Tomcat的核心操作。
2.init方法我们先来看看init方法中的代码,非核心的我们就直接去掉。
void init()throws exception {//创建相关的类加载器initClassLoaders();//省略一些代码...//创建Catalina类对象类& lt?& ampgt;startupClass = catalinaLoader。load class(" org . Apache . catalina . startup . catalina ");//Catalina实例对象启动实例=启动类。GetConstructor()。NewInstance()已创建;//省略一些代码...string method name = " set parent class loader ";阶级和阶级。lt;?& ampgt;参数类型
如果不清楚生命周期的内容,请参考前面的介绍。
4.start方法最后,我们来看看start方法的代码。
public void start()引发异常{ if(catalinaDaemon = = null){ init();//如果CatalinaDaemon为空,则初始化操作}//获取启动方法method method = catalina daemon . getclass()。getmethod ("start ",(类
5.核心进程总结我们可以通过下图总结Tomcat启动的核心进程。
从图中可以看出,Bootstrap其实并没有做什么核心的事情,主要是Catalina做的。
以上是Tomcat启动核心进程示例的详细内容。关于Tomcat启动过程的更多信息,请关注主机频道zhujipindao中的其他相关文章。com!
评论前必须登录!
注册