【Web】初识Web和Tomcat服务器

目录

前言

一、认识web

[1. 软件架构模式](#1. 软件架构模式)

[2. web资源](#2. web资源)

[3. URL请求路径(统一资源定位符)](#3. URL请求路径(统一资源定位符))

二、Tomcat服务器

[1. 简介](#1. 简介)

[2. tomcat服务器的目录结构](#2. tomcat服务器的目录结构)

3.使用tomcat服务器启动失败的常见原因

[3.1 端口冲突](#3.1 端口冲突)

[3.2 jdk环境变量配置出错](#3.2 jdk环境变量配置出错)

三、使用Tomcat发布Web项目

[1. 使用tomcat的webapps发布web项目](#1. 使用tomcat的webapps发布web项目)

[2. 使用IDEA创建web项目并发布](#2. 使用IDEA创建web项目并发布)

写在最后


前言

转眼就大三了,之前学习软件工程和java这两门课的时候都有接触到javaweb,但是都是浅尝辄止,只是了解了皮毛,完成了几个现成的项目,并没有深入学习javaWeb的相关知识。从今天开始,重新从零开始学习一下web的基础知识,为接下来的实习就业做好准备。

一、认识web

1. 软件架构模式

比较常见的软件架构模式有B/S和C/S架构模式,其典型代表分别为浏览器模式和客户端模式。

web就属于B/S架构。

2. web资源

分为静态资源和动态资源。

静态资源就是用html、css、js写的静态的页面

动态资源就是就有交互功能的页面,通常需要和服务器进行通信

3. URL请求路径(统一资源定位符)

本质就是通过该路径访问web资源,其具有唯一性。(可以理解就是网址)

格式:协议名称://服务器ip:端口号/项目名/资源路径

https://127.0.0.1:80/exem/proj

域名式 https://www.baidu.com

(1)这种域名的本质上也是url请求路径,不同的地方是 带域名的需要解析成 服务器IP:端口号的形式。

(2)对于解析的过程,首先访问本地域名解析文件,检索是否存在,如果不存在,则去DNS域名解析服务器上找。

(3)如果ip地址后面不加端口号,那么默认是80端口

(4)为什么要采用域名呢?因为好记呀,不然我们想要访问百度还得记住百度的ip和端口,还有其他那么多网站,根本记不住的。

二、Tomcat服务器

1. 简介

Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器

2. tomcat服务器的目录结构

bin目录用于存放可执行文件,有两个可执行文件比较常用,一个是startup.bat启动服务器,另一个是shutdown.bat关闭服务器

conf目录用于存放配置文件,其中sever.xml是服务器的配置文件,配置例如端口号等信息,web.xml是tomcat服务器管理的web项目的核心配置文件,比如欢迎标签等信息。

lib目录用于存放依赖的jar包

logs目录用于存放日志

webapps用于存放发布的web资源,使用时直接新建文件夹作为项目名称,存放web资源,启动服务器之后通过资源路径即可访问。

3.使用tomcat服务器启动失败的常见原因

3.1 端口冲突

win+r输入cmd打开命令行窗口,输入netstat -nao查看冲突端口运行服务的pid,然后去任务管理器中将其关闭即可

3.2 jdk环境变量配置出错

重新检查配置一下

三、使用Tomcat发布Web项目

1. 使用tomcat的webapps发布web项目

使用时直接新建文件夹作为项目名称,存放web资源,启动服务器之后通过资源路径即可访问。

2. 使用IDEA创建web项目并发布

(1)创建项目

(2)创建完成之后目录结构为这个样子。接下来我们来我们介绍一下web项目特有的webapp目录。

webapp

WEB-INF 存放配置和资源文件

web.xml web项目核心配置文件

lib 依赖的jar包

classes java文件编译后的calss文件

index.jsp 欢迎页

web资源 web资源

(3)配置IDEA中tomcat服务器启动web选项

(4)启动web项目

能够在浏览器中访问说明启动成功了!

写在最后

今天的学习就到此结束啦,希望大家读完有所帮助,明天我们将会学习servlet技术,一起加油!!!

相关推荐
AI进化营-智能译站21 分钟前
ROS2 C++开发系列17-多线程驱动多传感器|chrono高精度计时实现机器人同步控制
java·c++·ai·机器人
qq_589568104 小时前
springbootweb案例,出现访问 http://localhost:8080/list 一直处于浏览器运转阶段
java·网络协议·http·list·springboot
暴力求解4 小时前
Linux---线程基础
linux·运维·服务器
JAVA面经实录9174 小时前
计算机基础(完整版·超详细可背诵)
java·linux·数据结构·算法
晚风_END4 小时前
Linux|操作系统|最新版openzfs编译记录
linux·运维·服务器·数据库·spring·中间件·个人开发
AC赳赳老秦4 小时前
知识产权辅助:用 OpenClaw 批量生成专利交底书 / 软著申请材料,自动校验格式与内容合规性
java·人工智能·python·算法·elasticsearch·deepseek·openclaw
代码中介商4 小时前
Linux TCP 网络编程完全指南:从三次握手到高并发服务器
服务器·网络·tcp/ip
咖喱o5 小时前
QinQ/VLAN Stacking
linux·运维·服务器·网络
FYKJ_20105 小时前
springboot校园兼职平台--附源码02041
java·javascript·spring boot·python·eclipse·django·php