温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

如何部署Java Servlet

发布时间:2026-09-01 05:48:07 来源:亿速云 阅读:95 作者:小樊 栏目:编程语言

部署 Java Servlet 一般包含 开发 → 编译 → 打包 → 部署到 Servlet 容器(如 Tomcat)→ 访问 几个步骤。下面以 Tomcat 为例,给你一个清晰、可操作的流程。


一、环境准备

1. 安装 JDK

  • 安装 JDK 8 或以上
  • 配置环境变量:
    JAVA_HOME=/path/to/jdk
    PATH=$JAVA_HOME/bin:$PATH
    

2. 安装 Tomcat

  • 下载地址:https://tomcat.apache.org
  • 解压即可使用(无需安装)
  • 目录结构关键部分:
    tomcat/
     ├─ bin/       启动脚本
     ├─ webapps/   部署目录
     ├─ conf/      配置文件
    

二、编写 Servlet

1. 创建项目结构(手动方式)

myapp/
 ├─ WEB-INF/
 │   ├─ web.xml
 │   └─ classes/
 └─ index.html

2. 编写 Servlet 类

import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;

public class HelloServlet extends HttpServlet {
    protected void doGet(HttpServletRequest req, HttpServletResponse resp)
            throws IOException {
        resp.setContentType("text/html");
        resp.getWriter().write("Hello Servlet!");
    }
}

三、配置 web.xml(或使用注解)

方式一:web.xml(传统)

<web-app>
    <servlet>
        <servlet-name>hello</servlet-name>
        <servlet-class>HelloServlet</servlet-class>
    </servlet>
    <servlet-mapping>
        <servlet-name>hello</servlet-name>
        <url-pattern>/hello</url-pattern>
    </servlet-mapping>
</web-app>

方式二:注解(推荐,Servlet 3.0+)

@WebServlet("/hello")
public class HelloServlet extends HttpServlet {
    ...
}

四、编译 Servlet

javac -cp $CATALINA_HOME/lib/servlet-api.jar \
      -d WEB-INF/classes HelloServlet.java

五、部署到 Tomcat

方式一:直接复制到 webapps

cp -r myapp $CATALINA_HOME/webapps/

访问:

http://localhost:8080/myapp/hello

方式二:打成 WAR 包

jar -cvf myapp.war -C myapp .

将 myapp.war 放入 webapps/ 目录,Tomcat 会自动解压。


六、启动 Tomcat

$CATALINA_HOME/bin/startup.sh   # Linux/Mac
$CATALINA_HOME/bin/startup.bat # Windows

停止:

$CATALINA_HOME/bin/shutdown.sh

七、常见问题

  • 404 错误:检查 url-pattern 和访问路径
  • 500 错误:查看 logs/catalina.out
  • 类找不到:确认编译后的 class 在 WEB-INF/classes

八、现代方式(推荐)

  • 使用 Maven + Spring Boot
  • 内嵌 Tomcat,无需手动部署
@SpringBootApplication
public class App {
    public static void main(String[] args) {
        SpringApplication.run(App.class);
    }
}

如果你愿意,我可以:

  • 给你一个 完整可运行示例
  • 教你用 IDEA / Eclipse 一键部署
  • 或对比 Tomcat vs Spring Boot 部署方式

你目前是学习阶段还是项目实战?

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI
助
手