• 利用在Tomcat上部署servlet程序(手动布置加强关于servlet知识的理解,当前的idea是可以实现自动部署的)


    一.手动部署

    1.在idea里简单的建立一个测试的项目,创建一个简单的java文件,创建一个简单的类,进行继承HttpServlet,我这里以TT为例。(PS:为避免后续麻烦,代码会最后给出全部,理解过程即可,注意没有后面的引入jar包操作,继承是会报红的)。
    在这里插入图片描述

    说一下爆红的原因,因为你自动生成的项目,只有javaSE的jar包,而HttpServlet的jar包是javaEE的所以这里需要导入一下依赖jar包 servlet-api.jar。
    2.导入依赖jar包 servlet-api.jar的过程。
    File->ProjectStructure
    projectStructure
    modules
    modules

    去之前你下载安装的appache下找到lib下的jar包 servlet-api.jar。
    (PS:如果还没有下载安装tomcat的可以参考下载Tomcat以及简单部署一个项目到tomcat上)。或者自己去官网上找一个合适的版本也可。
    jar
    3.导入依赖后可以发现仍然在爆红,但是已经可以通过导入依赖的方式进行解决爆红问题,导入后简单写一个基本的servlet项目即可。这里附上我的源码,可进行参考,类名和我不一样的注意修改。
    成功导入
    编写代码:

    import javax.servlet.ServletException;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    import java.io.IOException;
    
    public class TT  extends HttpServlet {
        @Override
        protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
            System.out.println("Hello,我又又又要重新上路了。");
        }
    
        @Override
        protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
            super.doGet(req, resp);
        }
    }
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18

    4.找到项目的路径,在项目下创建一个out文件夹作为编译输出的文件夹。
    文件夹
    5,.进行Servlet源文件的编译。
    编译
    6.编译完成后out下的目录就会出现一个TT.class的编译文件。
    TT
    7.复制该文件到tomcat的webapp你要部署的项目下面的classes文件夹下面,具体部署路径可参考截图。(部署过程类似部署html页面,没有经验的友友可以参考将一个项目发布到Tomcat上并进行运行
    部署classes

    这个时候需要修改相关的WEB-INF下的web.xml文件,主要有两个部分,这里先附上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_4_0.xsd"
      version="4.0"
      metadata-complete="true">
      
        <servlet>
            <servlet-name>Testservlet-name>
            <servlet-class>TTservlet-class>
        servlet>
    
        <servlet-mapping>
            <servlet-name>Testservlet-name>
            <url-pattern>/TTurl-pattern>
        servlet-mapping>
    	
      
     web-app>
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22

    这里注意servlet-name里面的取名只要上下相同即可,没有限制。
    servlet-class的内容必须是你导入的上面编译文件的名字,例如我的是TT,所以内容为TT.
    至于url-pattern的路径’'+一个自己能记得住的名字即可,一般取为类名。

    8.测试是否部署成功。
    a.启动tomcat。
    启动成功
    b.找到一个浏览器输入路径进行访问。
    sucess

    访问路径后,每刷新一次网页就会启动一次程序,可以从后台看出来。

    这是自己在学习之后的一些理解,欢迎各位友友评论区指点其中理解有误的地方。
    阳光

  • 相关阅读:
    1.16 准备数据
    LeetCode(力扣)55. 跳跃游戏Python
    计算机网络(概述)
    蓝桥杯拿到一等奖,并分享经验
    第1章 现代通信网概述
    【006期】用Processing写一个根据音乐变化的黑白格游戏
    java编程基础总结——16.Object类
    【R语言简介】讲解
    树与图的广度优先遍历
    Ruby线程安全秘籍:深入探索并发编程的隐秘角落
  • 原文地址:https://blog.csdn.net/zhiqingxue/article/details/126368585