尝试不使用IDE在Tomcat上部署一个Web项目。
因为现在很多IDE帮助我们做了很多事情,导致中间的过程我们不是很清楚。
部署步骤:
第一步:创建目录结构
首先需要在tomcat安装路径下面的webapps文件夹下建立一个文件目录。
其中TestSimple是待部署项目的名字,同时也是该项目的文件夹名称。
在该文件夹下,建立WEB-INF文件夹,这个名称是固定的,不能更改,在WEB-INF目录下依次建立classes文件夹、com文件夹、servlet文件夹。
具体可以参考上面的树形结构进行创建。
第二步:将目标class文件放在servlet文件夹下
这一步需要做的是将你编写的servelt放到刚才创建的servlet文件夹下。
因为一开始编写的是一个Java文件,而servlet文件里实际用到的是java文件编译后的class文件。
所以需要在cmd下执行javac进行编译。
如果你现在就进行编译,会提示你报错,说找不到jar包。
所以有三种解决办法:
- 在编译时指定目标jar包的位置。
- 将目标Jar包添加到环境变量CLASSPATH中,注意这个路径结尾是servlet-api.jar,而不是很多时候包含文件所在的路径就行了。
- 第三种办法就是把Jar包放在指定目录下,这样就可以进行直接编译了。
接下来是按照第三种方式解决的操作演示:
首先在Tomcat的安装路径对应的文件夹下找到对应的servlet-api.jar.
默认的路径位置在:C:\Program Files\Apache Software Foundation\Tomcat 9.0\lib
然后复制这个jar包,放到JDK指定的目录下。
默认路径在:C:\Program Files\Java\jdk1.8.0_60\jre\lib\ext
如果你现在Tomcat在运行中,那么你需要将Tomcat关掉然后进行重启。
接下来在一开始创建的servlet文件夹下启动cmd
编译之前是你的Servlet对应的Java文件。
执行javac命令。生成对应的class文件。
(实级用到是class文件,但是源java文件不删除也可以。)
第三步:编写XML文件
在一开始创建的WEB-INF目录下创建一个web.xml文件。
文件内容如下。
在浏览器中输入该项目的URL地址。
即可看到成功显示。
到此就部署完毕了。
2020.11.26更新
补充:目录结构
一个典型的目录结构包含下面几个部分:
其中src
用来存放Java文件。
WebRoot
是Web项目的顶层目录。也成为文档根目录。
其中WEBROOT
包含下面两个部分:
META-INF
:系统自动生成,存放系统描述信息,一般情况下使用较少。
WEB-INF
:该目录存在于文档根目录下,但是该目录不能被引用。(也就是说该目录下存放的文件无法对外发布,当然也就无法被用户访问到了),
其中包括:
lib
:包含Web所需的jar
文件或者zip
文件,例如SQL Sever
的驱动程序。
web.xml
:Web应用的配置文件,非常重要,不能删除或随意修改。
classes
:在MyEclipse中没有显示出来,包含的是src编译出来的class文件。
其他目录主要是网站中的一些用户文件,包括下面文件:
静态文件:一般按功能分类,例如图片存储在images目录中。
JSP文件:动态页面。