小白入门基础 - tomcat

一:前言

        Tomcat 服务器是一个免费的开放源代码的 Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。对于一个初学者来说,可以这样认为,当在一台机器上配置好 Apache 服务器,可利用它响应 HTML(标准通用标记语言下的一个应用)页面的访问请求。实际上 Tomcat 是 Apache 服务器的扩展,但运行时它是独立运行的,所以当公司运行 tomcat 时,它实际上作为一个与 Apache 独立的进程单独运行的。

1、什么是web服务器软件?

  1. 服务器∶安装了服务器软件的计算机
  2. 服务器软件:接收用户的请求,处理请求,做出响应
  3. web服务器软件:接收用户的请求,处理请求,做出响应。
    1. 在web服务器软件中,可以部署web项目,让用户通过浏览器来访问这些项目
    2. web容器

2、常见的 java 相关的 Web 服务器软件:

  • webLogic : oracle公司,大型的JavaEE服务器,支持所有的JavaEE规范,收费的。
  • webSphere : IBM公司,大型的JavaEE服务器,支持所有的JavaEE规范,收费的。
  • BOSS : 3BOSS公司的,大型的JavaEE服务器,支持所有的JavaEE规范,收费的。
  • Tomcat : Apache基金组织,中小型的JavaEE服务器,仅仅支持少量的javaEE规范

二:tomcat 使用

第一步:下载和解压 Tomcat

下载地址:Apache Tomcat® - Welcome!。

注意:路径不能有中文

第二步:启动 tomcat 

1、双击 bin 目录下 startup.bat 即可启动 tomcat

 

2、打开浏览器,输入:127.0.0.1:8080,即可访问到 tomcat 

 备注:会遇到的一些情况

  1. 当启动窗口时一闪而过,启动失败
    1. 原因:java 路径配置错误
    2. 解决方法:java 的路径配置有问题,去系统变量里重新配置
  2. 启动报错
    1. 原因:启动过一次,端口占用了
    2. 解决方案1:找到占用的进程,杀死该进程
      1. cmd 中输入 netstat -ano
      2. 在列表中找到 8080 端口所对应的 PID(进程ID)
      3. 打开任务管理器,找到进程
      4. 点击任务管理器的查看,选择显示 PID
      5. 找到第二步的 PID 对应进程,右键关闭
    3. 解决方案2:修改端口号,见第三步

关闭:

1、正常关闭:

  • bin/shoutdown.bat
  • Ctrl+c

2、强制关闭:

  • 右上角的叉号 

第三步:修改端口号

.NET 我使用的是 80xx,Php 我使用的是 81xx,Java 我使用的是 82xx。

修改D:\apache-tomcat-8.0.0-RC3\conf\server.xml:

<Service name="Catalina"><!--The connectors can use a shared executor, you can define one or more named thread pools--><!--<Executor name="tomcatThreadPool" namePrefix="catalina-exec-"maxThreads="150" minSpareThreads="4"/>--><!-- A "Connector" represents an endpoint by which requests are receivedand responses are returned. Documentation at :Java HTTP Connector: /docs/config/http.html (blocking & non-blocking)Java AJP  Connector: /docs/config/ajp.htmlAPR (HTTP/AJP) Connector: /docs/apr.htmlDefine a non-SSL HTTP/1.1 Connector on port 8080--><Connector port="8200" protocol="HTTP/1.1"connectionTimeout="20000"redirectPort="8443" />

注意:修改后需要重启 tomcat 

第四步:再次测试 Tomcat

运行:D:\apache-tomcat-8.0.0-RC3\bin\startup.bat,如果窗口没有立即关闭,就代表成功了。

第五步:发布自己的网站

1、直接部署

        将网站直接拷贝到:D:\apache-tomcat-8.0.0-RC3\webapps

        或者将项目打包成 war 的压缩包类型,将其放到 webapps 下

2、通过配置文件

在D:\apache-tomcat-8.0.0-RC3\conf\Catalina\localhost下面建立一个naming.xml文件,内容如下:

<Context docBase="E:\Workspaces\Naming\1\WebRoot" debug="0" privileged="true">
</Context>

注意:虚拟路径就是文件名

效果:

第六步:管理 Web App

 

 当点击 Manager App 的时候,会要求输入用户名和密码,可以在 D:\apache-tomcat-8.0.0-RC3\conf\tomcat-users.xml 中增加用户名,如下:

 <?xml version='1.0' encoding='utf-8'?><tomcat-users><role rolename="manager-gui"/><user username="admin" password="123456" roles="manager-gui"/></tomcat-users>

注意:这是因为 Tomcat 支持 JAAS。

三:结尾

        由于 tomcat 是开源免费的,因此被广泛运用于中小型企业中作为服务器。同时是学习性价比比较低的一门技术。因此能够熟练的使用 tomcat 将会是面试的一个加分点。好啦本文就到此为止啦,希望能够对各位小伙伴有所帮助哦。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/604068.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

xxxView

提示&#xff1a;文章写完后&#xff0c;目录可以自动生成&#xff0c;如何生成可参考右边的帮助文档 文章目录 前言一、pandas是什么&#xff1f;二、使用步骤 1.引入库2.读入数据总结 前言 提示&#xff1a;这里可以添加本文要记录的大概内容&#xff1a; 例如&#xff1a;…

【INTEL(ALTERA)】生产中使用多个目标设备,如何满足外部内存接口Intel Agilex® 7偏移匹配准则?

说明 对于外部内存接口Intel Agilex 7使用的引脚&#xff0c;不同的引脚兼容设备可能会有不同的封装延迟。如果您遵循《外部内存接口用户指南》中的“偏移匹配指南”部分所述的要求&#xff0c;您可能会发现无法同时满足多个器件的要求。用户指南仅适用于您计划在开发阶段使用…

【SpringBoot+dubbo+zk】实现服务之间rpc通信

0)前置准备&#xff0c;我们使用zk作为注册中心&#xff0c;先启动zk&#xff0c;也就是2181端口。 1)父工程pom.xml <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0"xmlns:xsi"http…

【软件测试】概述

《软件缺陷》 定义 &#xff08;从产品内部看&#xff09;软件产品开发或维护过程中存在的错误、毛病等各种问题&#xff08;从产品外部看&#xff09;系统所需要实现的某种功能的失效或违背 表现形式(1) 软件没有实现产品规格说明所要求的功能模块(2) 软件中出现了产品规格说…

SpringBoot2.7升级项目到Springboot3踩坑指南

文章目录 概要国内顶级开源项目升级情况适配SpringBoot3指南技术细节小结 概要 由于SpringBoot3.x全面拥抱JDK17,兼容jdk21&#xff0c;jdk17乃是大势所趋。这里是从SpringBoot2.7-->SpringBoot3.1踩坑指南。 提前阅读&#xff1a;jdk8升级JDK17避坑指南&#xff08;适用于…

Transformer-MM-Explainability

two modalities are separated by the [SEP] token&#xff0c;the numbers in each attention module represent the Eq. number. E h _h h​ is the mean&#xff0c; ∇ \nabla ∇A : ∂ y t ∂ A {∂y_t}\over∂A ∂A∂yt​​for y t y_t yt​ which is the model’s out…

写字母(文件)

请编写函数&#xff0c;将大写字母写入文件中。 函数原型 void WriteLetter(FILE *f, int n);说明&#xff1a;参数 f 为文件指针&#xff0c;n 为字母数目(1 ≤ n ≤ 26)。函数将前 n 个大写英文字母写入 f 所指示的文件中。 裁判程序 #include <stdio.h> #include &…

书生·浦语大模型实战营 Lesson 1

书生浦语大模型全链路开源体系 书生浦语大模型开源历程 书生浦语大模型系列 从模型到应用 数据 预训练 微调 部署

Raect中自定义hook

一、自定义Hook 自定义Hook&#xff1a;将一些常用的、跨越多个组件的Hook功能&#xff0c;抽离出去形成一个函数&#xff0c;该函数就是自定义Hook&#xff0c;自定义Hook&#xff0c;由于其内部需要使用Hook功能&#xff0c;所以它本身也需要按照Hook的规则实现&#xff1a;…

【华为OD真题 Python】攀登者2

文章目录 题目描述示例1输入输出说明示例2输入输出说明实现代码题目描述 攀登者喜欢寻找各种地图,并且尝试攀登到最高的山峰。 地图表示为一维数组,数组的索引代表水平位置,数组的高度代表相对海拔高度。其中数组元素0代表地面。 例如[0,1,4,3,1,0,0,1,2,3,1,2,1,0], 代表…

linux进程管理工具的使用(supervisorctl、systemd、init.d、Upstart、Monit、runit、Daemontools)

1、supervisorctl&#xff1a; 这是Supervisor提供的命令行客户端&#xff0c;Supervisor是一个进程控制系统。它用于在UNIX类操作系统上控制和监视进程。它通常用于服务器环境中管理长时间运行的进程。 Supervisor 是一个用于监控和控制 UNIX 系统上的进程的程序。它不是大多…

向量数据库:usearch的简单使用+实现图片检索应用

usearch的简单使用 usearch是快速开源搜索和聚类引擎&#xff0c;用于C、C、Python、JavaScript、Rust、Java、Objective-C、Swift、C#、GoLang和Wolfram &#x1f50d;中的向量和&#x1f51c;字符串 // https://github.com/unum-cloud/usearch/blob/main/python/README.md …

第7章-第5节-Java中的比较器comparator和泛型的简单说明

1、 引入 上个章节中我们在使用TreeSet保存自定义数据类型的时候&#xff0c;类必须要实现Comparable这个接口&#xff0c;然后重写CompareTo这个方法&#xff0c;这个必须是在具体的自定义类内部去写&#xff0c;有时不方便&#xff0c;每遇到一个都要在那个类内部去写这个Co…

vs c++ qt 叫请求的json 输出到输出终端

1 接收数据 std::string response ""; //设置数据接收函数 curl_easy_setopt(curl, CURLOPT_WRITEFUNCTION, Utils::req_reply); // 设置写入数据的缓冲区 curl_easy_setopt(curl, CURLOPT_WRITEDATA, (void*)&response); 2 打印 数据类型 qDebug() << &q…

10-单例模式(Singleton)

意图 保证一个类只有一个实例&#xff0c;并提供一个访问它的全局访问点 实现 1 懒汉式&#xff0c;线程不安全 public class Singleton { private static Singleton instance; private Singleton (){} public static Singleton getInstance() { if (instance null) {…

第7章-第4节-Java中的Set集合和自然排序compareble

1、HashSet&#xff1a; 1&#xff09;、 Set集合的特点 元素存储可以有序&#xff0c;可以无序&#xff08;要看选择的具体子类 HashSet 无序 LinkedHashSet&#xff08;有序&#xff09;,TreeSet&#xff08;排序&#xff09;&#xff09; 没有索引&#xff0c;不能通过索引…

学生成绩录入及查询(结构体)

学生成绩表中&#xff0c;一名学生的信息包含如下信息&#xff1a; 学号(11位)、姓名、数学成绩、英语成绩、程序设计成绩、物理成绩。 本题要求编写程序&#xff0c;录入N条学生的信息&#xff0c;并且按查询要求显示学生成绩等信息。 输入格式: 输入在第一行给出正整数N(N…

Java学习网站,哪个最靠谱?

简介 Java学习网站有很多&#xff0c;哪个最靠谱呢&#xff1f;本文对Java学习网站进行对比。 第1类&#xff1a;大型培训机构(黑马等) 典型机构 黑马、尚硅谷、动力节点、白马、千锋、达内。 优点 知名度高。教程齐全&#xff08;Java、前端、Python等都有&#xff09;省…

PiflowX组件-ReadFromUpsertKafka

ReadFromUpsertKafka组件 组件说明 upsert方式从Kafka topic中读取数据。 计算引擎 flink 有界性 Unbounded 组件分组 kafka 端口 Inport&#xff1a;默认端口 outport&#xff1a;默认端口 组件属性 名称展示名称默认值允许值是否必填描述例子kafka_hostKAFKA_HO…

AI看图识熊实战(一)

使用ONNX Runtime封装onnx模型并推理 进行这一步之前&#xff0c;请确保已正确安装配置了Visual Studio 2017 和 C#开发环境。 项目的代码也可以在这里找到&#xff0c;下面的步骤是带着大家从头到尾做一遍。 界面设计 创建Windows窗体应用(.NET Framework)项目&#xff0c…