Servlet初识—编写hello world+使用smart Tomcat插件部署(一)

简介: Servlet初识—编写hello world+使用smart Tomcat插件部署

   第一次接触 Servlet,使用 Servlet 编写代码并配合 Tomcat 在浏览器中展示代码效果,也算是自己这么长时间学习java的一次飞升吧。


    本文总结了六步使用 Servlet 编写 helloworld步骤,希望给初学Servlet的同学一些帮助。

0、准备工作

      1)了解并安装 Tomcat

在编写代码之前,大家需要安装 Tomcat !!

如果没有安装的haute,可以参考该文章进行安装:Tomcat 安装和简单介绍

     2)maven 介绍


    maven 是一个构建工具,也就是 build (编译、打包、部署...)。


    我们在编写Servlet项目时,会遇到一些复杂的程序,编译和打包起来特别麻烦。比如 A 依赖 B,B 依赖 C,此时如果想要编译运行A,就必须先编译运行 B,要想编译运行 B,就必须先编译运行 C。


    而 maven 就是为了解决这个问题的,使我们在开发比较复杂的项目的时候,也可以比较方便的进行一些列操作(编译、打包、管理依赖...)。  

1、创建项目

      首先创建一个maven项目

此处我的 idea 版本是 2022版的

项目创建好之后的目录结构如下

src : 用来存放源代码

main :业务代码  

resources : 存放代码中需要依赖的资源

test: 测试代码

pom.xml : 项目中的全局配置文件(写了很多与项目相关的配置属性)

2、引入Servlet依赖

Servlet 并不是 Java 标准库自带的,要想使用,我们就需要额外的下载安装,并引入项目中!

此时就要借助 maven ,把我们使用的库里依赖的东西,自动从中央仓库上,下载下来

  ①在中央仓库 https://mvnrepository.com/ 中,搜索 Servlet,结果中第一个就是我们需要下载的

     ② 根据 Tomcat 选择相对应的版本,这里我选择的是 3.1-0版本

 

Servlet 3.1.0 和 Tomcat 8.5 和 jdk 8 是配套的

    ③ 选择 maven,把maven里的xml 复制到 pom.xml 中

<!-- https://mvnrepository.com/artifact/javax.servlet/javax.servlet-api -->
<dependency>
    <groupId>javax.servlet</groupId>
    <artifactId>javax.servlet-api</artifactId>
    <version>3.1.0</version>
    <scope>provided</scope>
</dependency>

 注意:复制之前,要先创建<dependencies>标签,然后把上述xml 复制进去

<dependencies> 标签内部放置项目依赖的 jar 包 . maven 会自动下载依赖到本地

此处如果大家网络不好,复制进去的代码就可能报红,大家可以点击右侧maven,然后点击刷新等待即可

3、创建目录结构

  虽然 maven 已经给我们创建出一些目录了,但是还不够,我们需要再创建一个符合 Tomcat 要求的目录结果。

    ① 在 main 目录下,创建 webapp 目录

    ② 在新建的 webapp 目录下,创建WEB-INF 目录

    ③ 在新建的 WEB-INF 目录下,创建 web.xml 文件

注意:这一串目录结构、位置、名字、层次,都得严格一致!!!

    ④ 编写 web.xml

往 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 Application</display-name>
</web-app>

如果报以下错误

URI is not registered (Settings | Languages & Frameworks | Schemas and DTDs)

按 Ctrl + Alt + s,把链接添加进去就行了。

4、编写代码

我们需要写的代码,需要放在 java 目录,比如创建一个类 HelloServlet

     第一步:把创建的 HelloServlet 类继承 HttpServlet

     第二步:实现父类 doGet方法,并把super方法删除!!

  第三步:打印 helloword

@WebServlet("/helloworld")
public class HelloServlet extends HttpServlet {
    @Override
    protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
        // 在Tomcat日志中打印helloworld
        System.out.println("helloword");
        // 给客户端返回helloworld 也就是在客户端页面打印helloworld
        resp.getWriter().write("helloworld");
    }
}

@WebServlet("/helloworld"):

此处写下的 "/helloworld" 意思是 GET请求并且 URL 里面路径是 /helloworld 的请求,才会生效,才会调用这个 doGet 方法。

也就是说给不同的路径,关联上不同的类!!!

"/helloworld" 是一个虚拟的资源,硬盘上并没有这个 "/helloworld" 文件

doGet: 表示当前 Tomcat 在收到某些 GET 请求的时候,会调用该方法

作用:根据请求,计算响应        

参数:

req : 请求(浏览器给Tomcat发的数据)

resp : 响应(Tomcat给浏览器发回的数据)

相关文章
|
2月前
|
监控 Java 应用服务中间件
部署tomcat部署实战案例
本文是关于Tomcat部署实战案例的教程,包括通过yum和二进制方式部署Tomcat的详细步骤,以及如何监控Tomcat服务。
190 84
部署tomcat部署实战案例
|
3月前
|
Java 应用服务中间件 Windows
【应用服务 App Service】App Service 中部署Java项目,查看Tomcat配置及上传自定义版本
【应用服务 App Service】App Service 中部署Java项目,查看Tomcat配置及上传自定义版本
|
2月前
|
应用服务中间件 Docker 容器
docker应用部署---Tomcat的部署配置
这篇文章介绍了如何使用Docker部署Tomcat服务器,包括搜索和拉取Tomcat镜像、创建容器并设置端口映射和目录映射,以及如何创建一个HTML页面并使用外部机器访问Tomcat服务器。
docker应用部署---Tomcat的部署配置
|
5月前
|
Ubuntu 前端开发 JavaScript
技术笔记:Ubuntu:一个部署好的tomcat应用(war包)怎么用Nginx实现动静分离?
技术笔记:Ubuntu:一个部署好的tomcat应用(war包)怎么用Nginx实现动静分离?
|
17天前
|
Java 应用服务中间件 Linux
tomcat学习二:tomcat部署多个项目:不修改端口和修改端口 两种方式详解
这篇文章详细介绍了在Tomcat服务器上部署多个项目的方法,包括不修改端口和修改端口两种方式。
59 0
|
2月前
|
Java 应用服务中间件 Maven
JavaWeb基础5——HTTP,Tomcat&Servlet
JavaWeb技术栈、HTTP、get和post区别、响应状态码、请求响应格数据式、IDEA使用Tomcat、报错解决、Servlet的体系结构、IDEA使用模板创建Servlet
JavaWeb基础5——HTTP,Tomcat&Servlet
|
3月前
|
应用服务中间件 Docker 容器
在服务器中使用Docker安装Tomcat、同时实现目录挂载、并且部署War包到服务器
这篇文章介绍了在Docker中安装Tomcat的过程,包括搜索Tomcat镜像、拉取镜像、目录挂载的准备、创建并挂载容器,以及如何进入容器和进行测试。文中还说明了如何将WAR包部署到Tomcat服务器并访问部署的应用。
在服务器中使用Docker安装Tomcat、同时实现目录挂载、并且部署War包到服务器
|
2月前
|
前端开发 Java 应用服务中间件
react自学(6) 部署到tomcat中
react自学(6) 部署到tomcat中
|
3月前
|
jenkins 持续交付 开发工具
"引爆效率革命!Docker+Jenkins+GIT+Tomcat:解锁持续集成魔法,一键部署Java Web应用的梦幻之旅!"
【8月更文挑战第9天】随着软件开发复杂度的增加,自动化变得至关重要。本文通过实例展示如何结合Docker、Jenkins、Git与Tomcat建立高效的持续集成(CI)流程。Docker确保应用环境一致性;Jenkins自动化处理构建、测试和部署;Git管理源代码版本;Tomcat部署Web应用。在Jenkins中配置Git插件并设置项目,集成Docker构建Tomcat应用镜像并运行容器。此外,通过自动化测试、代码质量检查、环境隔离和日志监控确保CI流程顺畅,从而显著提高开发效率和软件质量。
73 3
|
4月前
|
Java 应用服务中间件 Shell