WEB基础--TOMCAT服务器

news2025/1/16 3:03:23

服务器概述

什么是服务器

服务器:就是一个提供为人民服务的机器,这里的服务器主要指计算机服务器,分为两种:服务器软件和硬件服务器;

服务器分类

1、硬件服务器:安装了服务器软件的主机。就相当于高配的PC电脑;

2、服务器软件:就是一个软件,例如:

(1) 数据库服务器软件:Mysql,Oracle等;

(2) Web服务器软件(与Http服务器标准差不多):开源服务器

① 开源免费

② 大部分服务器只支持静态页面的浏览

③ 只支持了JavaEE规范中的几个规范

④ 例如:Apache(php)、Nginx、Tomcat

(3) 应用服务器软件:商业服务器

① 收费

② 实现了JavaEE13中规范

③ WebSphere(IBM)、WebLogic(Oracle)、JBoss(red hat)

④ Tomcat由于实现了JavaEE规范中的Servlet规范和Jsp规范,所以也称之为轻量级的应用服务器;

(4) 其他:邮件服务器、FTP服务器、代理服务器等;

注:JavaEE13种规范包括:JDBC、JNDI、JSP、Servlet、JTA、XML等

常见的WEB服务器

Javaweb服务器除了支持常规web服务器规范,还支持javaee的一些规范,更加强大。

Web服务器支持html

Javaweb服务器:html,javaee的一些规范(servlet,jsp等)

WebLogic:WebLogic是Oracle公司的产品,是目前应用最广泛的Web服务器,支持JavaEE规范,而且不断的完善以适应新的开发要求;

WebSphere:另一个常用的Web服务器是IBM公司的WebSphere,支持JavaEE规范;

Jboss:大名鼎鼎的红帽的产品,原来属于开源组织Jboss,后被红帽收购。支持JavaEE规范,免费(产品免费,服务收费);

Tomcat:是一个开源免费,占用内存小的javaWeb服务器,我们要学的就是它;

注:既然是应用服务器也就具有web服务器的功能;

TOMCAT入门

TOMCAT介绍

1、Tomcat是一个开源免费的javaWeb服务器,它是 Apache 软件基金会的一个顶级项目,由 Apache,Sun和其他一些公司及个人共同开发而成;

2、Tomcat8 支持最新的 Servlet 3.1 和JSP2.3 规范。Tomcat用java语言开发,Tomcat是一个符合J2EE(Servlet规范)标准的WEB服务器;

3、如果我要在电脑上运行Tomcat,必需要有java的运行环境。我们后面的JavaWeb学习都是基于Tomcat服务器的。官方地址Apache Tomcat® - Welcome!;

TOMCAT安装并访问

1、路径:中间不能有空格,不能有中文,不能有特殊符号

2、Tomcat是使用Java语言编写的一个服务器(程序),要运行Tomcat,必须得有Java的环境:

(1) 32位的JDK ---> 32位的Idea---> 32位Tomcat

(2) 64位的JDK ---> 64位的Idea---> 64位Tomcat

安装步骤:

1、安装Java环境(配置环境变量:JAVA_HOME和path)。没有JAVA_HOME会报错

2、启动Tomcat。Tomcat目录结构:

打开bin目录选择启动:

启动 :双击bin目录下面是startup.bat,或者通过cmd命令提示符窗口中启动;

关闭 :双击bin目录下面的shutdown.bat;

3、浏览器中访问:Tomcat的默认端口是8080。也是可以修改端口号(Tomcat文件夹 -- conf -- server.xml中)的,前提是端口号没有被占用。80是http默认端口,不用写直接访问的就是80;

(1) 访问:

① http://服务器所在主机的IP:服务器的端口号/资源名字

② http://服务器所在主机的名字:服务器的端口号/资源名字

(2) 若服务在本机:

① http://本机的IP:服务器的端口号/资源名字

② http://127.0.0.1:服务器的端口号/资源名字

③ http://localhost:服务器的端口号/资源名字

TOMCAT常见错误

1、访问的时候一定要先把Tomcat服务打开:

2、访问的资源必须要放入Tomcat中:

3、端口号被占用,Tomcat服务不能重复开启:

TOMCAT配置

1、Tomcat默认端口是8080,很多情况下我们都会把这个端口进行修改,修改成80,则访问直接可以不用加端口号访问。80端口是为HTTP(HyperText Transport Protocol)即超文本传输协议开放的,是HTTP的默认端口号:

2、由于80是默认端口,我们可以不加端口直接访问:http://localhost/

JAVAweb项目

JAVAWEB项目结构

1、开发JavaWeb的程序,必需要严格参照JavaWeb提供的规范来存放我们的资源。结构分析如下:

1、WEB-INF里面的程序是不可见的,必需通过我们的程序访问;

2、 现在web.xml并不是必需的;如果项目中需要用到这个web.xml,建议可以从apache-tomcat-xxx\webapps\ROOT\WEB-INF\web.xml拷贝;

3、index是非常特殊的,我们访问到一个文件夹,如果没有确定是哪一个文件,它就会去找名称为index.html或者index.jsp的文件;

创建WEB项目

步骤:

1、创建一个文件夹oa1;

2、在oa1下面创建WEB-INF文件夹,在WEB-INF下面分别创建lib和classes文件夹;

3、拷贝web.xml到WEB-INF下面。可以从\apache-tomcat-xxx\webapps\ROOT\WEB-INF\web.xml拷贝;

4、在oa文件夹下面创建一个hello.html;

WEB项目部署

1.直接把文件夹放到Tomcat的webapps中

2.在server.xml里面进行配置

写在最后

Tomcat是一款常用的轻量级服务器,在初学WEB开发时十分重要,我们所熟知的Springboot框架也是内置了Tomcat。笔者小,中,大厂均有面试经历,每日分享JAVA全栈相关知识,希望能够和大家共同进步。

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

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

相关文章

dijkstra 算法为什么高效?

最短路径算法中,dijkstra(i,j,k 颇有遍历意味) 算法时间效能很好,而 floyd,bellman-ford 算法则优在处理负权重。但这是为什么? 从算法过程看,dijkstra 算法确定了某点最短路径后,它…

单目标应用:基于红嘴蓝鹊优化器RBMO的微电网优化(MATLAB代码)

一、微电网模型介绍 微电网多目标优化调度模型简介_vmgpqv-CSDN博客 参考文献: [1]李兴莘,张靖,何宇,等.基于改进粒子群算法的微电网多目标优化调度[J].电力科学与工程, 2021, 37(3):7 二、红嘴蓝鹊优化器求解微电网 2.1算法简介 红嘴蓝鹊优化器(R…

Sharding-JDBC 使用 Nacos 作为配置中心 【下 代码实战】

Sharding-JDBC 使用 Nacos 作为配置中心 【下 代码实战】 1. 实现 ShardingSphereDriverURLProvider 由上一篇博文我们已经知道了 Sharding-JDBC 是基于 Java SPI 机制去加载 并实例化 ShardingSphereDriverURLProvider 的实现类 public interface ShardingSphereDriverURLP…

3个月搞定计算机二级C语言!高效刷题系列进行中

文章目录 前言备考计算机二级C语言为什么考二级C语言?刷题总结后发布系列文章后记免责声明 前言 大家好,我是梁国庆。 计算机二级应该是每一位大学生的必修课,相信很多同学的大学flag中都会有它的身影。 我在大学里也不止一次的想要考计算…

如何下载iSlide软件及详细安装步骤

iSlide插件是一款能够支持PPT和WPS的ppt插件,旨在让每一个人都能够轻松制作出精美的ppt,能够在职场收到更多的关注,而该软件的口号正是「让 PPT 设计简单起来」,该插件是由原来NT插件升级改良过来的,在功能上面进行了全…

代码随想录算法训练营第51天:股票2

代码随想录算法训练营第51天:股票2 ‍ 123.买卖股票的最佳时机III 力扣题目链接(opens new window) 给定一个数组,它的第 i 个元素是一支给定的股票在第 i 天的价格。 设计一个算法来计算你所能获取的最大利润。你最多可以完成 两笔 交易。 注意&a…

01 Pytorch 基础

1.数据处理 1.取一个数据,以及计算大小 (剩下的工作,取batch,pytorch会自动做好了) 2.模型相关 如何得到结果 3.模型训练/模型验证: 代码剖析 1.配置文件yaml (字典) #参数配置config {"train_path"…

centos7.6使用飞鱼FlyFish的docker镜像

参考教程: 飞鱼的docker镜像使用教程: doc/FlyFish_docker镜像使用指南.md 云智慧/FlyFish - Gitee.com centos的docker安装教程: CentOS下 Docker、Docker Compose 的安装教程_centos安装docker-compose_centos 安装docker-compose-CSDN…

ER实体关系图与数据库模型图绘制

属性分析 1、用户表(user)、用户钱包表(user_wallet)(与user是1对1关系)、用户钱包交易日志表(user_wallet_log)(与user是1对多关系)。 user:用户表通常包含用户的基本信息,例如用户ID(主键)、用户名、密码(通常加密…

C++ 12 之 指针引用

c12指针引用.cpp #include <iostream>using namespace std;struct students12 {int age; };int main() {students12 stu;students12* p &stu; // 结构体指针students12* &pp p; // 结构体指针起别名pp->age 20;// (*pp).age 22;cout << "…

C++并发之锁(std::lock_guard,std::unique_lock)

目录 1 概述2 使用实例3 接口使用3.1 lock_guard3.2 adopt_lock3.3 defer_lock3.4 try_to_lock3.5 try_lock3.6 release3.7 lock3.8 call_one1 概述 锁保护是通过使互斥对象始终处于锁定状态来管理互斥对象的对象。。   在构造时,互斥对象被调用线程锁定,在析构时,互斥被解…

STM32的FreeRtos的学习

首先就是去官网下载一个源文件&#xff1a;FreeRtos官网 下载下来的是一个zip文件&#xff0c;解压缩了。 然后再工程文件夹中创建个文件夹&#xff1a; 在这个文件夹中创建3个文件夹&#xff1a; 然后开始把下载下来的文件夹中的文件挑选出来放到我们的工程文件夹中&#xff1…

uniapp中u-input点击事件失效

当给u-input设置了disabled/readonly属性后&#xff0c;pc浏览器中点击事件失效&#xff0c;但是app/移动端h5中却仍有效 解决办法 给外边包上一个盒子设置点击事件&#xff0c;给input加上css属性&#xff1a;pointer-events&#xff1a;none pointer-events CSS 属性指定在什…

【APP移动端自动化测试】第二节.Appium介绍和常用命令代码实现

文章目录 前言一、Appium介绍和安装二、python代码功能实现 2.1 hello appium 参数详解 2.2 在脚本内启动其他app 2.3 获取app的包名和界面名 2.4 关闭app和驱动对象 2.5 安装和卸载以及是否安装app 2.6 将应用置于后台总结 前言 一、Appium介绍…

[AI资讯·0612] AI测试高考物理题,最高准确率100%,OpenAI与苹果合作,将ChatGPT融入系统中,大模型在物理领域应用潜力显现

AI资讯 国产AI大战高考物理&#xff0c;第1题全对&#xff0c;第2题开始放飞终于放大招了&#xff0c;2024WWDC&#xff0c;苹果开启AI反击战苹果一夜重塑iPhone&#xff01;GPT-4o加持Siri&#xff0c;AI深入所有APPOpenAI确认苹果集成ChatGPT 还任命了两位新高管GPT-4搞不定…

GUI编程(Python)

本章&#xff0c;我们将学习GuI (Graphics User Interface) ,即图形用户界面编程&#xff0c;我们可以通过python提供的丰富的组件&#xff0c;快速的实现使用图形界面和用户交互. GUI编程类似于“搭积木”&#xff0c;将一个个组件(Widget)放到窗口中&#xff0e;如下是 windo…

windows环境下配置git环境变量

路由当前目录 vim 打开 .bash_profile PATH$PATH:/d/phpstudy_pro/Extensions/php/php7.4.3nts PATH$PATH:/d/phpstudy_pro/Extensions/php8/php8.2.9nts PATH$PATH:/d/phpstudy_pro/Extensions/composer2.5.8 …

大数据概论总结

三次信息化浪潮 : 信息技术的支撑 : 存储设备容量不断增加 CPU的处理能力不断提高 网络带宽不断增加 数据产生方式的变革促成大数据时代的来临 运营式系统阶段用户原创内容感知式系统阶段 大数据发展历程 : 分为三个阶段 : 大数据的概念 : 1 . 数据量大 : 根据IDC作出…

再也不用担心流量超过上限了!Windows 11中监控数据使用情况的几种方法

序言 如果你使用按流量计费的连接或担心超过数据上限,在Windows上监控你的数据使用情况可能是有益的。这允许你调整你的使用模式,以确保你有效地使用数据。方法如下。 使用任务管理器密切关注数据使用情况 在任务管理器中,你可以实时监控计算机上的应用程序使用的数据量。…

Prisma数据库ORM框架学习

初始化项目 中文网站 点击快速开始,点击创建sql项目,后面一步一步往后走 这个博主也挺全的,推荐下 可以看这个页面初始化项目跟我下面是一样的,这里用得是ts,我下面是js,不需要额外的配置了 1.vscode打开一个空文件夹 2.npm init -y 初始化package.json 3.安装相关依赖 …