Tomcat的目录结构及部署应用程序
下载好的二进制的Tomcat,解压会看到7个目录,如下:
bin 目录:Tomcat的脚本存放目录,如启动、关闭脚本等。其中 **.bat用于windows平台,**.sh用于Linux平台
conf 目录:Tomcat的配置文件目录
lib 目录:存放Tomcat的依赖jar包
logs 目录:Tomcat的默认日志目录
webapps 目录:webapp运行的目录,需要部署的应用程序必须放在该目录下
work 目录:
temp 目录:
应用程序的目录结构
servlet应用程序(项目)必须在某一个目录结构下部署。
webapps |——项目01 // 工程的根目录,每个war包都可视为一个webapp的压缩包 | |——META-INF // 用于存放工程自身相关的一些信息,元文件信息,通常由开发工具、环境自动生成 | | |——MANIFEST.MF // 配置文件清单 | | | |——WEB-INF // 该目录下内容只有服务器才能访问,客户端无法访问 | | |——classes // 存放程序所需要的所有class文件 | | | |——**.class | | | |——**.xml | | | | | |——lib // 存放依赖的jar包 | | | |——**.jar | | | | | |——web.xml // 部署描述符 | | | |——[userdir] | |——[userfiles]
|
|——项目02
在Tomcat中部署Web应用
第一种方式:将应用程序目录结构按照上面的规制配置好,然后复制到Tomcat安装目录的下的webapps目录中即可。可以项目先将其打包成war包,然后将war包复制到webapps目录下,当开始启动Tomcat时,Tomcat就会自动解压这个war文件。
jar -cvf ***.war .
第二种方式:可以通过在Tomcat的conf目录中编辑server.xml文件实现部署,或者单独部署一个XML文件,这样就不需要编辑service.xml了。
一个Servlet实例
package app01a; import java.io.IOException; import java.io.PrintWriter; import javax.servlet.Servlet; import javax.servlet.ServletConfig; import javax.servlet.ServletException; import javax.servlet.ServletRequest; import javax.servlet.ServletResponse; import javax.servlet.annotation.WebServlet; @WebServlet(name = "MyServlet", urlPatterns = {"/my"}) public class MyServlet implements Servlet { private transient ServletConfig servletConfig; @Override public void destroy() { } @Override public ServletConfig getServletConfig() { return servletConfig; } @Override public String getServletInfo() { return "My Servlet"; } @Override public void init(ServletConfig servletConfig) throws ServletException { this.servletConfig = servletConfig; } @Override public void service(ServletRequest resuest, ServletResponse response) throws ServletException, IOException { String servletName = servletConfig.getServletName(); response.setContentType("text/html"); PrintWriter writer = response.getWriter(); writer.print("<html><head></head>" + "<body>Hello form " + servletName + "</body></html>"); } }
按照上面的方法部署后,打开浏览器,在地址栏中输入地址
http://localhost:8080/demoTomcat/my 或者 http://127.0.0.1:8080/demoTomcat/my