eclipse tomcat部署web项目_tomcat学习|通过tomcat源码启动web项目

v2-41d8826f26b285ccca375fe34bdf2160_1440w.jpg?source=172ae18b

开头说两句

小刀博客: https://www.lixiang.red

小刀公众号: 程序员学习大本营

学习背景

上一波,我们学习了tomcat 中主要接口的方法及关系: https://www.lixiang.red/articles/2019/08/12/1565622240937.html 实际上源码只通过看,也差不多只能看到这个地步了,后面就一直看的话,就很容易乱,有句话说:实践出真知 今天我们就一起通过tomcat源码,来启动我们日常的web应用,在中间,可以debug , 可以更好的看到整个过程

准备web应用

可以在https://start.spring.io/ 去快速生成一个web应用

v2-2f7c120916296bd601593e07e821d8d4_b.jpg

然后生成项目,可得到如下目录结构:

v2-a77574c4fc70b921d71ce53ca88cb3ba_b.jpg

我们用ide打开,去添加一个controller ,并打成war包备用

v2-f4ce28c5e3ac265b46138bdbb979061c_b.jpg

然后把war包丢到tomcat的webapp目录下面

tomcat的配置

导入jar包到idea中

ant相关的配置可参考这篇文章 https://www.lixiang.red/articles/2019/08/04/1564907616303.html 执行deploy命令之后,我们可以在tomcat-build-libs 目录中看到拉下的jar包

v2-29a900075b4ec62e79d62974c57f4692_b.jpg

然后把这些包导入到idea中 先打开工程设置面板

v2-be76ca1e4e9b03b97e8c908f75b00741_b.jpg

点击添加jar包的按钮

v2-6e8e2903baf9e7fcd789e66d22f9a694_b.jpg

找到对应tomcat-build-libs 目录,全选下面的所有文件,包括我们自己下载的ant.jar ,最后点击OK

v2-cffa9f9b4deb1dd719a94e0011c5273f_b.jpg

修改tomcat 本身一些配置

  1. 删掉tomcat/webapps/examples 目录, 这里面都是一些示例,在源码编译中会报错,干扰我们的正常启动,可以先删掉
  2. 修改tomcat的端口号(可选)在 tomcat/conf/server.xml中进行修改,就像我们平时部署应用一样

v2-345a5937253bbfa3787c9db75096c8fa_b.jpg

启动tomcat 并跟踪

以前我们有聊过,在用shell 脚本启动tomcat时,是启动的Bootstrap.java这个类,并且跟上了参数 start

v2-07258c8c92e4c2fe5f62ea6e25c52d50_b.jpg

所以,我们需要idea的启动参数里面,也要加上start

v2-df3f199e5d9791aa17e0f808149bf982_b.jpg

打断点: 可以在我们前面讲的启动入口入,也就是main函数处打断点做最开始的追踪

v2-b8227c8da0b8e880f1fc613400ea3009_b.jpg

放过断点继续运行一会,可以看到spring启动的界面

v2-cf518be923241d14f7c50e340d305fc2_b.jpg

最后我们在浏览器中访问下我们写的controller,能看到相应的返回

v2-465777e76d9e9d3786017adbc5df3ffc_b.jpg

最后说两句

经过前面的学习,再看源码就信息量很大了,不利于分析,我们就要把源码运行起来,然后通过debug , 可一步一步的去调试和学习,大家在学习过程中有什么问题可以随时和小刀说: best39697802

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值