Tomcat 使用入门
简介及目录结构
Apache Tomcat 是一个 Servlet 容器,是应用(Java)服务器,可在其中部署 Java Web 应用。
Tomcat 的目录结构主要包括以下几个重要的文件夹和文件:
apache-tomcat/
├── bin/                # 启动和停止 Tomcat 的脚本
│   ├── catalina.sh     # Unix/Linux 启动脚本
│   ├── catalina.bat    # Windows 启动脚本
│   ├── startup.sh      # 启动 Tomcat 的脚本
│   ├── shutdown.sh     # 停止 Tomcat 的脚本
│   └── ...
├── conf/               # Tomcat 配置文件
│   ├── server.xml      # 主要的服务器配置文件
│   ├── web.xml         # 默认的 Web 应用程序配置
│   ├── context.xml     # 应用程序上下文配置
│   └── ...
├── lib/                # Tomcat 运行所需的库文件
│   ├── servlet-api.jar # Servlet API
│   ├── jsp-api.jar     # JSP API
│   └── ...
├── logs/               # Tomcat 生成的日志文件
│   ├── catalina.out    # 主日志文件
│   ├── localhost.log   # 本地访问日志
│   └── ...
├── webapps/            # 部署的 Web 应用程序
│   ├── ROOT/           # 默认的 Web 应用
│   ├── examples/       # 示例应用
│   └── ...
├── work/               # Tomcat 运行时生成的临时文件
│   └── Catalina/       # 运行时编译的 JSP 文件
├── temp/               # 临时文件
└── README.txt          # Tomcat 的说明文件
- 
bin/:包含启动和停止 Tomcat 的脚本文件。你可以在这里找到
startup.sh和shutdown.sh等脚本。 - 
conf/:存放 Tomcat 的配置文件,包括:
server.xml:主要的服务器配置文件,定义了服务器、服务和连接器等。web.xml:全局的 Web 应用程序配置。context.xml:应用程序的上下文配置。
 - 
lib/:包含 Tomcat 运行所需的所有 Java 库(JAR 文件)。
 - 
logs/:存放 Tomcat 生成的日志文件,包括访问日志和错误日志。
 - 
webapps/:这是部署 Web 应用程序的目录。你可以在这里放置 WAR 文件或解压的 Web 应用目录。
ROOT/目录是默认的 Web 应用。 - 
work/:Tomcat 运行时生成的临时文件,主要用于存储编译后的 JSP 文件。
 - 
temp/:存放临时文件。
 - 
README.txt:包含 Tomcat 的基本说明和使用指南。
 
入门示例
下面是一个简单的 Tomcat 入门实例,展示如何创建和部署一个基本的 Servlet 应用程序。
1. 环境准备
- 安装 Tomcat:下载并安装 Apache Tomcat,可以从 Tomcat 官网 获取最新版本。
 - 安装 JDK:确保你已经安装了 JDK,并且配置了
JAVA_HOME环境变量。 
2. 创建一个简单的 Servlet
1. 创建项目结构
在你的工作目录中,创建以下结构:
MyWebApp/
├── WEB-INF/
│   ├── web.xml
└── HelloServlet.java
2. 编写HelloServlet.java
在MyWebApp目录下创建HelloServlet.java文件,并添加以下代码:
import java.io.IOException;
import javax.servlet.ServletException;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.HttpServlet;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
@WebServlet("/hello")
public class HelloServlet extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest request, HttpServletResponse response) 
            throws ServletException, IOException {
        response.setContentType("text/html");
        response.getWriter().println("<h1>Hello, World!</h1>");
    }
}
3. 编写web.xml
在WEB-INF目录下创建web.xml文件,并添加以下内容:
<web-app xmlns="http://xmlns.jcp.org/xml/ns/javaee" 
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://xmlns.jcp.org/xml/ns/javaee 
         http://xmlns.jcp.org/xml/ns/javaee/web-app_3_1.xsd"
         version="3.1">
    <servlet>
        <servlet-name>HelloServlet</servlet-name>
        <servlet-class>HelloServlet</servlet-class>
    </servlet>
    
    <servlet-mapping>
        <servlet-name>HelloServlet</servlet-name>
        <url-pattern>/hello</url-pattern>
    </servlet-mapping>
</web-app>
3. 编译 Servlet
在命令行中,进入MyWebApp目录并编译 Servlet:
javac -cp "path/to/tomcat/lib/*" HelloServlet.java
编译完成后,会在当前目录下生成一个 .class 文件,再在WEB-INF目录下新建一个classes目录,并将生成的 .class 文件移动到该目录下:
MyWebApp/
├── WEB-INF/
│   ├── web.xml
│   └── classes/
│        └── HelloServlet.class
└── HelloServlet.java
4. 部署到 Tomcat
将整个MyWebApp目录压缩为MyWebApp.war文件,或直接将MyWebApp目录放入 Tomcat 的webapps目录中。
5. 启动 Tomcat
- 
进入 Tomcat 的
bin目录。 - 
在命令行中运行以下命令启动 Tomcat:
- Windows:
 
catalina.bat start- Linux/Unix:
 
./catalina.sh start 
6. 访问应用
打开浏览器,访问以下 URL:
http://localhost:8080/MyWebApp/hello
你应该会看到页面显示Hello, World!。
7. 停止 Tomcat
要停止 Tomcat,可以在bin目录下运行以下命令:
- Windows:
 
catalina.bat stop
- Linux/Unix:
 
./catalina.sh stop
参考:ChatGPT
                
            
        
浙公网安备 33010602011771号