环境
Ubuntu 20.04.3
Tomcat 8.5.54
openjdk 11.0.11
安装Tomcat
- 更新源
1 | $ apt-get update |
- 安装 tomcat
1 | $ apt-get install tomcat |
- 启动 tomcat
1 | $ sudo bash /opt/apache-tomcat-8.5.54/bin/startup.sh |
配置Servlet
- webapps 目录结构
1 | $ tree -d -L 1 webapps |
- yohann 目录结构
1 | $ tree -L 2 yohann |
- 修改 web.xml,代码如下:
1 | <?xml version="1.0" encoding="UTF-8"?> |
- 修改 ~/.zshrc 文件
1 | export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib:/opt/apache-tomcat-8.5.54/lib/servlet-api.jar |
编辑并保存 CLASSPATH 变量,添加 servlet-api.jar 这个包,然后执行
source ~/.zshrc
使新配置生效。
- 新建 classes/HelloWorldExample.java,代码如下:
1 | import java.io.IOException; |
- 编译 classes/HelloWorldExample.java
1 | $ javac classes/HelloWorldExample.java; |
- 重启 tomcat
1 | $ sudo bash /opt/apache-tomcat-8.5.54/bin/shutdown.sh |
- curl 访问
1 | $ curl localhost:8080/yohann/hello |
Tomcat热加载
每次修改代码都要重启 tomcat 太麻烦了,可以通过 tomcat 热加载,无需重启 tomcat,自动加载 class。
- 新建 META-INF/context.xml,代码如下:
1 | <?xml version='1.0' encoding='utf-8'?> |
- 重启 tomcat
1 | $ sudo bash /opt/apache-tomcat-8.5.54/bin/shutdown.sh |
- 修改 classes/HelloWorldExample.java,代码如下:
1 | import java.io.IOException; |
- 编译 classes/HelloWorldExample.java
1 | $ javac classes/HelloWorldExample.java; |
- curl 访问
1 | $ curl localhost:8080/yohann/hello |