• 探索Maven创建项目全过程(超详细~~~)


    1.Maven介绍

    Maven 这个词翻译为“专家”,“内行”。作为一个 Apache 组织中一个成功的开源项目,Maven 主要服务于基于 java 平台的项目构建,依赖管理和项目信息管理,还可以用来帮助实现项目的构建、测试、打包和部署。

    这次演示建立的Mavenue项目是关于Servlet的,下面介绍一下Servlet~~~

    2.Servlet介绍

    2.1 Servlet定义

    Servlet(Server Applet 的缩写,全称 Java Servlet):Servlet 是运行在 Web 服务器或应用服务器(例如:Tomcat)上的程序,它是作为来自 Web 浏览器或其他 HTTP 客户端的请求和 HTTP 服务器上的数据库或应用程序之间的中间层。
    在这里插入图片描述

    2.2 Servlet的主要任务

    • 允许程序员注册一个类, 在 Tomcat 收到某个特定的 HTTP 请求的时候, 执行这个类中的一些代码.
    • 帮助程序员解析 HTTP 请求, 把 HTTP 请求从一个字符串解析成一个 HttpRequest 对象
    • 帮助程序员构造 HTTP 响应. 程序员只要给指定的 HttpResponse 对象填写一些属性字段, Servlet就会自动的安装 HTTP 协议的方式构造出一个 HTTP 响应字符串, 并通过 Socket 写回给客户端.

    Maven是创建项目的格式,Servlet是我们需要实现的一个程序;
    可以将Maven比喻成一个工具用来管理Servlet这个实际的物品。

    3.创建Servlet程序步骤

    我们在学习新知识时,我们一般都是打印/响应出hello world;因此我们的第一个Servlet程序也是在网页上响应出hello world
    使用 IDEA 创建一个 Maven 项目,我们一共分为七步进行。

    3.1 创建项目

    1.打开菜单 -> 点击文件 -> 选择新建项目 -> 选择Maven选项

    在这里插入图片描述

    2.为项目命名
    这里注意,如果我们是第一次创建Maven项目,在点击完成后,需要引入依赖,可能会花费一定的时间,这个时候要保持网络通畅!!!
    在这里插入图片描述
    3.项目创建完毕后, 一般右下角会弹出以下对话框. 选择 Enable Auto-Import

    4.创建好的项目图如下
    在这里插入图片描述

    通过上图我们可以看到创建好的项目中有一些目录结构,这是 Maven 项目的标准结构:

    • main:表示源代码的根目录. 后续创建 .java 文件就放到蓝色java目录中
    • test:用来放置测试代码,测试代码放入到绿色的java目录中
    • pom.xml:用来放置配置文件
    • resource:用于放置程序依赖的资源(例如:图片、图标、音频等)

    3.2 引入依赖

    1.在https://mvnrepository.com/中搜索servlet,一般第一个结果就是。
    在这里插入图片描述
    2.点击进入后,需要选择版本,我们选择3.1.0这个版本,因为我们使用的是Tomcat 8.5 这个版本,这两个版本匹配。,如果你的Tomcat不是8.5版本,可以“https://tomcat.apache.org/whichversion.html”查询版本对应关系
    在这里插入图片描述
    3.把中央仓库中提供的 xml 复制到项目的 pom.xml 中
    我们复制的这段代码就是Servlet库在Maven当中的坐标。
    在这里插入图片描述
    放置进入到pom.xml当中,这里需要将复制好的数据放入到这对标签当中, 标签内部放置项目依赖的 jar 包. maven 会自动下载依赖到本地;放置好就如下图:
    在这里插入图片描述

    注意

    • 首次使用,可能会标记为红色,不用担心,因为idea下载这个依赖需要时间,下载好就会如上图颜色一样了。

    3.3 创建目录

    Maven项目已经帮我们生成了一些目录结构,但是这些还是不够;下面创建的目录结构务必要保证一点不错!!!
    这里又有一个web.xml,这个web.xml是给Tomcat看的,Tomcat从webapp目录中加载webapp,就算以这个web.xml为依据的。
    在这里插入图片描述
    这里的东西我们不需要自己写,直接拷贝进去就行了;代码如下:

    DOCTYPE web-app PUBLIC
            "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"
            "http://java.sun.com/dtd/web-app_2_3.dtd" >
    
    <web-app>
        <display-name>Archetype Created Web Applicationdisplay-name>
    web-app>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    3.4编写代码

    1.在蓝色java目录中创建一个类,并且让这个类继承于HttpServlet类HttpServlet类这个类就是我们引入依赖里面的类,;如下图:
    在这里插入图片描述
    2.重写父类HttpServlet类中的doGet方法,我们在doGet方法需要做的事情就是根据请求,生成响应。

    import javax.servlet.ServletException;
    import javax.servlet.annotation.WebServlet;
    import javax.servlet.http.HttpServlet;
    import javax.servlet.http.HttpServletRequest;
    import javax.servlet.http.HttpServletResponse;
    import java.io.IOException;
    
    @WebServlet("/hello")
    public class HelloServlet extends HttpServlet {
        @Override
        protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
            //super.doGet(req, resp);
            //在服务器打印hello
            System.out.println("hello");
            //在网页上响应hello
            resp.getWriter().write("hello");
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18

    3.5 打包程序

    为啥要打包呢?因为一个类就会生成一个.class文件,在一个规模比较大的项目中就会有很多类,会生成很多.class文件,把他们打成一个包,便于管理。
    在Java中,常见的压缩包有两种格式:jar包war包jar 包是普通的 java 程序打包的结果. 里面会包含一些 .class 文件;war 包是 java web 的程序, 里面除了会包含 .class 文件之外, 还会包含 HTML, CSS, JavaScript, 图片, 以及其他的jar 包。打成 war 包格式才能被 Tomcat 识别,因此我们需要将项目打包成war

    1.Maven项目默认打包类型是jar包,我们需要修改包的类型,在pom.xml文件当中加入下方的代码,就能打成war包。

        
        <packaging>warpackaging>
    
        
        <build>
            <finalName>hello_servletfinalName>
        build>
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    2.打开Maven目录,找到生命周期中的package选项,右键点击这个选择,选择运行Maven构建这个选项即可
    在这里插入图片描述
    2.打包成功后,控制台就会出现BUILD SUCCESS这个标语,并且目录结构中出现新的目录target,打开后就能看到一个war包了。
    在这里插入图片描述

    3.6 部署程序

    1.把打好的包,拷贝到Tomcat的websapp目录中。
    在这里插入图片描述
    2.在打开bin目录中的startup.bat启动Tomcat就算部署完成了
    在这里插入图片描述

    3.7 验证结果

    此时通过浏览器访问 http://127.0.0.1:8080/hello_servlet/hello
    就可以看到如下效果
    在这里插入图片描述
    打开服务器会看打开服务器也打印:
    在这里插入图片描述

    注意
    URL 中的 PATH 分成两个部分, 其中 hello_servlet 为 Context Path, hello 为 Servlet Path
    在这里插入图片描述

    4.更方便的部署方式

    上面这个七步可以简化,简化的是第五步和第六步,我们可以在IDEA上面下载Tomcat的插件帮助我们完成。

    4.1.下载Tomcat插件

    我的因为已经下载过了,因此显示的是已下载;如果没有下载,点击下载就行了。
    在这里插入图片描述

    4.2 配置Tomcat插件

    1.打开面板
    在这里插入图片描述
    2.添加Tomcat配置
    注意这里的Context path 这个会出现在我们访问的URL中。
    在这里插入图片描述

    4.3运行项目

    此时我们原本的配置文件那个地方变成了Tomcat的标,点击旁边的三角就可运行程序了。
    在这里插入图片描述

    运行成功后,下面就会出现一个URL,点击进入,会显示404错误,不用担心,这时因为我们还没输入Servlet Path,输入我们之前注释的 Servlet Path就可以访问到了。
    在这里插入图片描述
    访问结果如图:
    在这里插入图片描述


    写在最后:

    🐣🐣🐣以上就是本文全部内容,如果对你有所帮助,希望能留下你的点赞+收藏+关注,我会更加努力的更新内容!非常感谢🧡🧡🧡

  • 相关阅读:
    C++ 手动实现双向链表(作业版)
    Kotlin MutableStateFlow
    Protocol Buffers语法
    汽车品牌查询及车型大全查询
    记一次JVM内存占用过高的优化经验
    java:java.util.MissingResourceException: Cant find bundle for base name解决方式
    Python吴恩达深度学习作业12 -- 卷积神经网络的应用
    vue实现简单的购物车案例
    并发bug之源(二)-有序性
    188. 买卖股票的最佳时机 IV
  • 原文地址:https://blog.csdn.net/qq_65228171/article/details/130904183