JavaWeb与Tomcat简介

article/2025/5/20 6:44:52

JavaWeb概念

什么是Javaweb

JavaWeb 是指,所有通过 Java 语言编写可以通过浏览器访问的程序的总称,叫 JavaWeb。
同时JavaWeb 是基于请求和响应来开发的。

什么是请求

请求是指客户端给服务器发送数据,叫请求 Request。

什么是响应

响应是指服务器给客户端回传数据,叫响应 Response。

请求和响应的关系

请求和响应是成对出现的,有请求就有响应。
在这里插入图片描述

Web资源的分类

web 资源按实现的技术和呈现的效果的不同,又分为静态资源和动态资源两种。

静态资源: html、css、js、txt、mp4 视频 , jpg 图片
动态资源: jsp 页面、Servlet 程序

常用的Web服务器

Tomcat:由 Apache 组织提供的一种 Web 服务器,提供对 jsp 和 Servlet 的支持。它是一种轻量级的 javaWeb 容器(服务器),也是当前应用最广的 JavaWeb 服务器(免费)。

Jboss:是一个遵从 JavaEE 规范的、开放源代码的、纯 Java 的 EJB 服务器,它支持所有的 JavaEE 规范(免费)。

GlassFish: 由 Oracle 公司开发的一款 JavaWeb 服务器,是一款强健的商业服务器,达到产品级质量(应用很少)。

Resin:是 CAUCHO 公司的产品,是一个非常流行的服务器,对 servlet 和 JSP 提供了良好的支持, 性能也比较优良,resin 自身采用 JAVA 语言开发(收费,应用比较多)。

WebLogic:是 Oracle 公司的产品,是目前应用最广泛的 Web 服务器,支持 JavaEE 规范, 而且不断的完善以适应新的开发要求,适合大型项目(收费,用的不多,适合大公司)。

Tomcat

Tomcat目录介绍

在这里插入图片描述
web工程可以理解为一个网站。

如何启动Tomcat服务器

找到 Tomcat 目录下的 bin 目录下的 startup.bat 文件,双击,就可以启动 Tomcat 服务器。

如何测试 Tomcat 服务器启动成功???

打开浏览器,在浏览器地址栏中输入以下地址测试:
在这里插入图片描述
当出现如下界面,说明 Tomcat 服务器启动成功!!!

在这里插入图片描述
常见的启动失败的情况有,双击 startup.bat 文件,就会出现一个小黑窗口一闪而来。 这个时候,失败的原因基本上都是因为没有配置好 JAVA_HOME 环境变量。具体配置环境变量方法百度上有很多,说一下配置之后出现错误的常见的情况:
一:JAVA_HOME 必须全大写。
二:JAVA_HOME 中间必须是下划线,不是减号-
三:JAVA_HOME 配置的路径只需要配置到 jdk 的安装目录即可。不需要带上 bin 目录。

另一种启动 tomcat 服务器的方式

1、打开命令行
2、cd 到 你的 Tomcat 的 bin 目录下
在这里插入图片描述
3、敲入启动命令: catalina run

停止Tomcat

1、点击 tomcat 服务器窗口的 x 关闭按钮
2、把 Tomcat 服务器窗口置为当前窗口,然后按快捷键 Ctrl+C
3、找到 Tomcat 的 bin 目录下的 shutdown.bat 双击,就可以停止 Tomcat 服务器(推荐)

修改Tomcat的端口号

Mysql 默认的端口号是:3306
Tomcat 默认的端口号是:8080

找到 Tomcat 目录下的 conf 目录,找到 server.xml 配置文件。
在这里插入图片描述

如何部署web工程到Tomcat中

第一种部署方法:
只需要把 web 工程的目录拷贝到 Tomcat 的 webapps 目录下即可:
1、在 webapps 目录下创建一个 book 工程:
在这里插入图片描述
2、把上午做的书城第一阶段的内容拷贝到book目录里面:
在这里插入图片描述

3、访问Tomcat下的web工程(就我们刚刚创建的那个):
只需要在浏览器中输入访问地址格式如下:在这里插入图片描述
当我们在地址栏中输入http://localhost:8080时,其实访问对应的是我们Tomcat服务器中的webapps目录。在这里插入图片描述
然后敲入我们的web工程名:http://localhost:8080/book,则访问对应的就是我们的book工程。在这里插入图片描述
然后就可以按照对应的目录层级进行访问相应的资源,用/控制目录层级,比如访问user:
在这里插入图片描述
第二种部署方法:
找到 Tomcat 下的 conf 目录\Catalina\localhost\ 下,创建如下的配置文件:
在这里插入图片描述
abc.xml 配置文件内容如下:

<!-- Context 表示一个工程上下文 
path 表示工程的访问路径:/abc 
docBase 表示你的工程目录在哪里 --> 
<Context path="/abc" docBase="E:\book" />

访问这个工程的路径如下:http://ip:port/abc/ 就表示访问 E:\book 目录。
有了docBase之后你的这个web工程文件的存放位置就可以不受限制,可以由你任意指定。

手托 html 页面到浏览器和在浏览器中输入 http://ip:端 口号/工程名/访问的区别

手托html页面的意思就是直接通过锁定文件位置(查找在磁盘上的哪个位置)然后去找对应的文件。

手托 html 页面的原理:
直接去硬盘查找,而不是通过网络去进行查找的。
在这里插入图片描述
输入访问地址访问的原理:
通过互联网去查找资源。
在这里插入图片描述

ROOT 的工程的访问,以及默认 index.html 页面的访问

啥是ROOT工程,它在我们的Tomcat中:
在这里插入图片描述
它有点特殊:

当我们在浏览器地址栏中输入访问地址如下:
http://ip:port/ ====>>>> 没有工程名的时候,默认访问的是 ROOT 工程。

当我们在浏览器地址栏中输入的访问地址如下:
http://ip:port/工程名/ ====>>>> 没有资源名,默认访问 index.html 页面。

这都是默认约定,记着就行。

IDEA整合Tomcat

操作的菜单如下:File | Settings | Build, Execution, Deployment | Application Servers
在这里插入图片描述
配置你的 Tomcat 安装目录:
在这里插入图片描述
就可以通过创建一个 Model 查看是不是配置成功!!!
在这里插入图片描述
上图中,java就是普通的用java写的程序,直接就能运行的;
而Java Enterprise 主要是针对Java EE 项目的开发设计的“帮助我们开发和部署可移植、健壮、可伸缩且安全的服务器端 Java应用程序”,所以web项目大多都在这个视图中进行开发。功能较前者多一些。

web project,web service project不能直接运行,必须在容器里面运行,这个容器就是web server。我们上面将的Tomcat就是一个web服务器。

IDEA 中动态 web 工程的操作

IDEA 中如何创建动态 web 工程。
1、创建一个新模块:
在这里插入图片描述
2、选择你要创建什么类型的模块:
在这里插入图片描述
3、输入你的模块名,点击【Finish】完成创建。
在这里插入图片描述
4、创建成功如下图:
在这里插入图片描述

Web 工程的目录介绍

在这里插入图片描述

如何给动态 web 工程添加额外 jar 包

1、可以打开项目结构菜单操作界面,添加一个自己的类库:
在这里插入图片描述
2、添加你类库需要的 jar 包文件。
在这里插入图片描述
3、选择你添加的类库,给哪个模块使用:
在这里插入图片描述
4、选择 Artifacts 选项,将类库,添加到打包部署中:
在这里插入图片描述

如何在 IDEA 中部署工程到 Tomcat 上运行

1、建议修改 web 工程对应的 Tomcat 运行实例名称:
在这里插入图片描述
2、确认你的 Tomcat 实例中有你要部署运行的 web 工程模块:
在这里插入图片描述
3、你还可以修改你的 Tomcat 实例启动后默认的访问地址:
在这里插入图片描述
4、在 IDEA 中如何运行,和停止 Tomcat 实例。
4.1、正常启动 Tomcat 实例:
在这里插入图片描述
4.2、Debug 方式启动 Tomcat 运行实例:
在这里插入图片描述
4.3、停止 Tomcat 运行实例:
在这里插入图片描述
4.4、重启 Tomcat 运行实例:
在这里插入图片描述

修改工程访问路径

在这里插入图片描述

修改运行的端口号

在这里插入图片描述

修改运行使用的浏览器

在这里插入图片描述

配置资源热部署

在这里插入图片描述


http://chatgpt.dhexx.cn/article/9P3YYDCG.shtml

相关文章

Tomcat 简介

目录 1 install Tomcat 2 startup and shutdown Tomcat 3 config the Tomcat port 4 directory structure of Tomcat 1 install Tomcat go to http://tomcat.apache.org and install Tomcat. Please make sure that you have installed JDK and configed the JAVA_HOME co…

第二章:TomCat简介

一、TomCat概述 1、tomcat概述 tomcat是sun公司推出的&#xff08;小型Servlet/jsp测试工具&#xff09;的基础上研发出来的一个优秀的servlet容器。是一个完全使用java语言的开源插件。 2、tomcat作为servlet容器的基本功能 servlet是一种运行在服务器上的小插件。servlet最常…

Eclipse配置tomcat服务器及tomcat简介

一、手动配置tomcat到eclipse tomcat的压缩包资源可以去资源包中下载。&#xff08;win32和win64都有&#xff09; 1、 打开eclipse–>Window–>Preferences&#xff0c;按下图步骤选择&#xff1a; 2、 博主给的资源是tomcat7.0版的&#xff0c;所以这里选择配置7.0版…

Tomcat概述

文章目录 一、Tomcat简介&#xff08;1&#xff09;Tomcat概述&#xff08;2&#xff09;Tomcat和Apache的比较&#xff08;3&#xff09;Tomcat同类产品&#xff08;4&#xff09;Tocmat和JDK的关系&#xff08;5&#xff09;Tomcat和JDK版本对应图 二、Tomcat工作原理&#x…

tomcat的简介

1. tomcat是什么 Tomcat是Apache 软件基金会&#xff08;Apache Software Foundation&#xff09;的Jakarta 项目中的一个核心项目&#xff0c;由Apache、Sun 和其他一些公司及个人共同开发而成。 Tomcat 服务器是一个免费的开放源代码的Web 应用服务器&#xff0c;属于轻量级应…

仿酷狗音乐播放器开发日志十八——换肤功能的实现二:改变控件和窗体透明度(附挂件类源码)

转载请说明原出处&#xff0c;谢谢~~ 昨天把大致布局分析了一下&#xff0c;昨天晚上把布局写好实现了&#xff0c;今天把大致的功能完成了一下&#xff0c;现在的外观已经和原酷狗的换肤界面完全一样&#xff0c;其中的调整播放列表透明度和设置整个软件透明度的代码已经完成了…

stylish网站换肤与网站分析妙用

作者&#xff1a;吴甜甜 个人博客网站&#xff1a; wutiantian.github.io 微信公众号&#xff1a; 吴甜甜的博客 stylish是火狐浏览器等平台的换肤插件 结合F12开发者功能可以进行&#xff1a; 背景色看起来不舒服&#xff0c;想换种颜色页面有一些内容你不想看到&#xff0c…

Unity3D 模型换肤技术

最近在看Unity3D的人物模型和动画。所以今天先说下人物的换装吧。相信大家都玩过网游吧&#xff0c;没有玩过的也相信见过&#xff0c;就是网游或者单机游戏里的人物会有更换服装&#xff0c;更换武器的功能。如果外形(mesh)是一样的&#xff0c;那么把贴图换下就好&#xff0c…

C++ QT结合FFmpeg实战开发视频播放器-13视频播放器换肤功能实现(1)背景属性添加

视频播放器换肤功能实现(1)背景属性添加 作者&#xff1a;虚坏叔叔 博客&#xff1a;https://xuhss.com 早餐店不会开到晚上&#xff0c;想吃的人早就来了&#xff01;&#x1f604; 视频播放器换肤功能实现(1)背景属性添加 回到我们的编辑器源码中&#xff0c; 运行程序&am…

iOS端实现节日换肤

本文是我在网上看到一篇不错的文章,因为之前没接触过,所以特意转过来,和大家一起分享下..以下正文:一、问题的提出  不知道大家有没有发现, 元旦期间, 很多APP界面里的图标都换成了具有节日气氛的样式,而在过了元旦节之后, 这些图标又悄无声息的变回了本来的面貌.   这些具…

换肤 与 静态库

一 换肤 基本的换肤功能实现选中皮肤保存至系统偏好 // 记录用户选中的皮肤[[NSUserDefaults standardUserDefaults] setObject:skinColor forKey:"skinColor"];[[NSUserDefaults standardUserDefaults] synchronize];123123 抽取SkinTools单例&#xff0c;简化视图…

C++ QT结合FFmpeg实战开发视频播放器-15换肤功能的后台实现

作者&#xff1a;虚幻私塾 博客&#xff1a;https://xuhss.com 早餐店不会开到晚上&#xff0c;想吃的人早就来了&#xff01;&#x1f604; 一、换肤功能的后台实现 定义changeBackground函数&#xff0c;让qml去调用这个函数来实现换肤功能&#xff0c; 函数的实现调用了set…

Element UI主题换肤功能(基于vue-element-admin框架)

环境信息&#xff1a; 日期&#xff1a;2022-08-05 node版本&#xff1a;v14.15.4 "sass": "1.26.8", "sass-loader": "8.0.2", 本次实现的是基于花裤衩大佬的 vue-element-admin 或者 vue-admin-template 的前端框架实现的主题换肤功…

JavaScript:演示Ajax的get和post请求,练习选顶卡和换肤案例

JavaScript:演示Ajax的get和post请求&#xff0c;练习选顶卡和换肤案例 Ajax 异步请求 特别提示: 异步请求不要使用live server插件,必须创建一个本地服务器环境 同步与异步 以前端请求,后端响应为例 同步: 前端发请求, 必须等到后端响应完成,才允许发送另一个请求异步: 前端…

Android换肤之Android-skin-support

前言 之前做个APP需要用到换肤&#xff0c;在githup上面找了很久&#xff0c;终于找到一款功能强大、基本能够满足产品需求的换肤框架&#xff0c;那就是Android-skin-support&#xff0c;这个框架换肤功能很强大、不管是白天、黑夜还是任意颜色、图片的皮肤包都可以&#xff…

对 Android 应用换肤方案的总结

作者&#xff1a;me 虽然现在已经有很多不错的换肤方案&#xff0c;但是这些方案或多或少都存在自己的问题。在这篇文章中&#xff0c;我将对 Android 现有的一些动态换肤方案进行梳理&#xff0c;对其底层实现原理进行分析&#xff0c;然后对开发一个新的换肤方案的可能性进行…

前端换肤,聊一聊主题切换那些事

一些网站通常会提供白天、夜间模式&#xff0c;以及自定义主题等等&#xff0c;这种主题切换也就是本文说的前端换肤。 这次案例用的是白天和夜间模式的切换&#xff0c;在做换肤之前&#xff0c;得先知道一件事情&#xff1a;css的变量定义&#xff0c;对变量定义不熟悉的同学…

android 皮肤,Android换肤

前言 之前做个APP需要用到换肤&#xff0c;在githup上面找了很久&#xff0c;终于找到一款功能强大、基本能够满足产品需求的换肤框架&#xff0c;那就是Android-skin-support&#xff0c;这个框架换肤功能很强大、不管是白天、黑夜还是任意颜色、图片的皮肤包都可以&#xff0…

Android 应用换肤方案的总结

虽然现在已经有很多不错的换肤方案&#xff0c;但是这些方案或多或少都存在自己的问题。在这篇文章中&#xff0c;我将对 Android 现有的一些动态换肤方案进行梳理&#xff0c;对其底层实现原理进行分析&#xff0c;然后对开发一个新的换肤方案的可能性进行总结。 1、通过自定…

Android 插件化换肤方案

效果 实现流程 实现LayoutInflater.Factory2这个接口&#xff0c;实现onCreateView方法(主要仿照系统原来LayoutInflater.createView()方法的实现)&#xff0c;此处可以拿到页面中所有的View&#xff0c;判断有没有需要换肤的View&#xff0c;并且保存下来&#xff1b;在Activ…