Tomcat和Servlet

这篇具有很好参考价值的文章主要介绍了Tomcat和Servlet。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档


前言

提示:这里可以添加本文要记录的大概内容:
因为现在都用spring框架了,所以本文就简单介绍一下Tomcat和Servlet


提示:以下是本篇文章正文内容,下面案例可供参考

一、Tomcat是什么?

1.1下载:

官网地址
Tomcat和Servlet,Java EE,tomcat,servlet,java

我下载的时8版本,其实应用商店也可以下载,但是10版本,慎重下

1.2 tomcat是什么

Tomcat 是一个 HTTP 服务器.
HTTP 协议就是 HTTP 客户端和 HTTP 服务器之间的交互数据的格式,同时也通过 ajax 和 Java Socket 分别构造了 HTTP 客户端.
HTTP 服务器我们也同样可以通过 Java Socket 来实现.

而 Tomcat 就是基于 Java 实现的一个开源免费,也是被广泛使用的 HTTP 服务器。

1.3启动服务器:

在bin目录下面的点击startup.bat就可以启动了
Tomcat和Servlet,Java EE,tomcat,servlet,java
启动后也是一堆乱码看不懂
但是没有关系,我们在浏览器输入localhost:8080就可以一个tocmcat的欢迎界面了
Tomcat和Servlet,Java EE,tomcat,servlet,java

如果启动失败:
cmd中在命令行中使用 netstat -ano | findstr 8080 确定看 8080 是否被其他进程绑定, 把对方进程干掉,再重新启动 Tomcat 一般就可以解决问题。

二.部署

把带有css的前端文件放入webapps里,
Tomcat和Servlet,Java EE,tomcat,servlet,java

http://localhost:8080/blog_system/login.html

在URL里这样子输入
Tomcat和Servlet,Java EE,tomcat,servlet,java

他就出来了

三、Servlet

3.1创建项目

Tomcat和Servlet,Java EE,tomcat,servlet,java
Tomcat和Servlet,Java EE,tomcat,servlet,java
然后把这个nme命名好

3.2引入依赖

Maven 项目创建完毕后, 会自动生成一个 pom.xml 文件.
我们需要在 pom.xml 中引入 Servlet API 依赖的 jar 包
中央仓库
Tomcat和Servlet,Java EE,tomcat,servlet,java
选择第一个然后选择3.1.0这个版本
查询版本对应关系
Tomcat和Servlet,Java EE,tomcat,servlet,java
把这个拷贝到pom.xml里

<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
         xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
         xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
    <modelVersion>4.0.0</modelVersion>

    <groupId>org.example</groupId>
    <artifactId>ServletHelloWorld</artifactId>
    <version>1.0-SNAPSHOT</version>

    <properties>
        <maven.compiler.source>8</maven.compiler.source>
        <maven.compiler.target>8</maven.compiler.target>
    </properties>
    <dependencies>
        <!-- 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>

</project>

pom.xml的所有代码 3.3创建目录

Tomcat和Servlet,Java EE,tomcat,servlet,java
创建的目录要这样子,这个webapp要和Java同等级
Tomcat和Servlet,Java EE,tomcat,servlet,java
然后再在下面创建一个web.xml
Tomcat和Servlet,Java EE,tomcat,servlet,java
其实也可以类比springboot中的这个properties,只不过servlet中的那个叫做xml
Tomcat和Servlet,Java EE,tomcat,servlet,java接着在web里拷贝这个代码

<!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>

webapp 目录就是未来部署到 Tomcat 中的一个重要的目录. 当前我们可以往 webapp 中放一些静态资源, 比如 html , css 等.
在这个目录中还有一个重要的文件 web.xml. Tomcat 找到这个文件才能正确处理 webapp 中的动态资源

四编写代码

Tomcat和Servlet,Java EE,tomcat,servlet,java

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 {
        System.out.println("hello");
        resp.getWriter().write("hello");
    }
}

创建一个类 HelloServlet , 继承自 HttpServlet
在这个类上方加上 @WebServlet(“/hello”) 注解, 表示 Tomcat 收到的请求中, 路径为 /hello
的请求才会调用 HelloServlet 这个类的代码. (这个路径未包含 Context Path)
重写 doGet 方法. doGet 的参数有两个, 分别表示收到的 HTTP 请求 和要构造的 HTTP 响应. 这个
方法会在 Tomcat 收到 GET 请求时触发
HttpServletRequest 表示 HTTP 请求. Tomcat 按照 HTTP 请求的格式把 字符串 格式的请求转成
了一个 HttpServletRequest 对象. 后续想获取请求中的信息(方法, url, header, body 等) 都是通
过这个对象来获取.
HttpServletResponse 表示 HTTP 响应. 代码中把响应对象构造好(构造响应的状态码, header,
body 等)
resp.getWriter() 会获取到一个流对象, 通过这个流对象就可以写入一些数据, 写入的数据会被
构造成一个 HTTP 响应的 body 部分, Tomcat 会把整个响应转成字符串, 通过 socket 写回给浏览

五、打包

现在依然是不能运行的,这个只是逻辑的一部分。
我们的代码不是通过 main 方法作为入口了. main 方法已经被包含在 Tomcat 里, 我们写的代码会被 Tomcat 在合适的时机调用起来
Tomcat和Servlet,Java EE,tomcat,servlet,java
点击这里就可以打包了
Tomcat和Servlet,Java EE,tomcat,servlet,java
这样子打包成功了,这个jar包在target下面
Tomcat和Servlet,Java EE,tomcat,servlet,java
这样的 jar 包并不是我们需要的, Tomcat 需要识别的是另外一种 war 包格式.
另外这个 jar 包的名字太复杂了, 我们也希望这个名字能更简单一点。

5.1war和jar包的区别

jar 包是普通的 java 程序打包的结果. 里面会包含一些 .class 文件.
war 包是 java web 的程序, 里面除了会包含 .class 文件之外, 还会包含 HTML, CSS, JavaScript, 图
片, 以及其他的 jar 包. 打成 war 包格式才能被 Tomcat 识别,springboot里也可以按照我下面的打包方式

在pom.xml新增一个

<packaging>war</packaging>

再在package内置增加一个build标签,表示war打出的包的名字

<build>
<finalName>ServletHelloWorld</finalName>
</build>

重新打包一下
Tomcat和Servlet,Java EE,tomcat,servlet,java

六.部署

把上面的war包放到tomcat的webapp目录下,解压缩一下
Tomcat和Servlet,Java EE,tomcat,servlet,java

Tomcat和Servlet,Java EE,tomcat,servlet,java
然后这样子就可以了,但是别忘记打开tomcat的start.bat,不然无法部署成功的

总结

其实servlet和springboot真的差不多,springboot就是servlet的升级版本,学会一个上手另一个就很快了文章来源地址https://www.toymoban.com/news/detail-775877.html

到了这里,关于Tomcat和Servlet的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • [JAVA EE ]创建Servlet——继承HttpServlet类笔记3

    Response 一、响应行 组成:协议/版本 响应状态码 状态码描述 响应状态码:服务器告诉客户端浏览器本次请求响应的一个状态,都是三位数 1xx:服务器接收客户端消息,但是没有接收完成,等待一段时间后,发送1xx状态码 2xx:成功,200 3xx:重定向。302重定向,304访问缓存

    2024年02月03日
    浏览(42)
  • 【Servlet学习二】Servlet原理(Tomcat)&& ServletAPI

    目录 🌟一、Servlet运行原理 🌈1、Servlet的执行原理(重点) 🌈2、Tomcat伪代码的简单理解 2.1  Tomcat初始化流程 2.2  Tomcat处理请求流程 2.3 Servlet 的 service 方法的实现 🌟二、Servlet API 详解 1、HttpServlet 2、HttpServletRequest 3、HttpServletResponse 面试题:请求转发与请求重定向的区别?

    2024年02月12日
    浏览(39)
  • Tomcat和Servlet

    提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 提示:这里可以添加本文要记录的大概内容: 因为现在都用spring框架了,所以本文就简单介绍一下Tomcat和Servlet 提示:以下是本篇文章正文内容,下面案例可供参考 官网地址 我下载的时8版本,其实应用

    2024年02月03日
    浏览(42)
  • Tomcat+Http+Servlet

    JAVAWeb技术栈 BS架构: B/S架构(Browser/Server架构)是一种常见的软件架构模式,用于构建Web应用程序。在B/S架构中,浏览器(Browser)作为客户端,通过网络协议(通常是HTTP)与服务器(Server)进行通信,而服务器负责处理客户端的请求并生成响应。 客户端(浏览器):客户端

    2024年02月12日
    浏览(62)
  • [JAVAee]Tomcat - Servlet

    目录 Tomcat Servlet的工作 创建Servlet ①项目 ②依赖  ③目录  ④代码 ⑤打包 ⑥部署 ⑦验证 Servlet的运行原理 Servlet API HttpServlet 方法 处理Get/POST请求  HttpServletRequest 方法 获取请求中的信息  获取GET请求中的参数 获取POST请求中的参数 FORM表格形式 JSON形式 方法一: 方法二: Http

    2024年02月12日
    浏览(42)
  • tomcat与servlet

    目录 一、Http服务器 二、tomcat 1、概念 2、tomcat解压缩文件 (1)bin文件夹 (2)conf文件夹 (3)logs (4)webapps 3、借助tomcat服务器访问网页 三、servlet 1、概念 2、servlet实现在浏览器上显示hello (1)创建Maven项目 (2)引入依赖 (3)创建目录 (4)编写代码 (5)打包程序 (

    2024年01月20日
    浏览(49)
  • Tomcat 学习之 Servlet

    目录 1 Servlet 介绍 2 创建一个 Servlet 3 web.xml 介绍(不涉及 filter 和 listener 标签) 3.1 display-name 3.2 welcome-file-list 3.3 servlet 3.4 session-config 3.5 error-page 4 Tomcat 如何根据 URL 定位到 Servlet 5 执行 Servlet 5.1 Servlet 接口(规范) 5.2 Servlet 生命周期 5.3 执行 init 初始化方法 5.4 执行 service

    2024年02月22日
    浏览(44)
  • 通过Tomcat / Small Tomcat,如何部署Servlet?(超详细)

    目录 基于Tomcat对Servlet进行部署 一、创建项目 二、引入Servlet依赖 三、构建目录结构 四、编写代码 五、打包程序 六、部署程序 七、验证程序 基于Smart Tomcat对Servlet进行部署 第一步:下载Smart Tomcat插件 第二步:进行相关配置   第三步:运行配置  第四步:确认部署是否成功

    2024年01月18日
    浏览(39)
  • Javaweb基础-tomcat,servlet

    properties配置文件: 由键值对组成 键和值之间的符号是等号 每一行都必须顶格写,前面不能有空格之类的其他符号 xml配置文件:(xml语法=HTML语法+HTML约束)xml约束-DTD /  Schema DOM4J进行XML解析:(jar包 dom4j.jar ) web项目标准文件结构(Tomcat/webapps下): app 本应用根目录 stat

    2024年02月19日
    浏览(50)
  • javax.servlet 和 jakarta.servlet的关系和使用tomcat部署 jakarta.servlet

    1,javax.servlet 和 jakarta.servlet的关系 javax.servlet 和 jakarta.servlet 是 Java Servlet API 的两个版本。 Java Servlet API 是由 Sun Microsystems(现在是 Oracle)开发和维护的,其包名以 javax.servlet 开头。从 Java EE 8 开始,Servlet API 的维护权转交给了 Eclipse Foundation 的 Jakarta EE 社区,因此,在最新的

    2024年01月20日
    浏览(47)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包