当前位置: 首页 > news >正文

【Web】初识Web和Tomcat服务器

目录

前言

一、认识web

1. 软件架构模式

2. web资源

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

二、Tomcat服务器

1. 简介

2. tomcat服务器的目录结构

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

3.1 端口冲突

3.2 jdk环境变量配置出错

三、使用Tomcat发布Web项目

1. 使用tomcat的webapps发布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技术,一起加油!!!


http://www.mrgr.cn/news/35352.html

相关文章:

  • pgSQL-timescaledb复制表出现的问题
  • Linux kernel 堆溢出利用方法(二)
  • Python自动化运维DevSecOps与安全自动化
  • Redhat7.9 安装 KingbaseES 金仓数据库 V9单机版(静默安装)
  • 【Chapter 3】Machine Learning Classification Case_Prediction of diabetes-XGBoost
  • 接口类和抽象类在设计模式中的一些应用
  • 业务数据批量插入数据库实践
  • 二分查找法求解一元三次方程组
  • 文件或目录的权限表示法
  • C++ bitset(位图)的介绍和使用
  • Sam Altman的博客:The Intelligence Age
  • 什么是前端开发 ?
  • c++ 继承 和 组合
  • SpringMVC详细使用总结教程
  • 基于C++ 实现一个庆祝国庆节的小程序(含实现代码)
  • ESP32-TFT_eSPI.h文件的使用心得(包含画图相关函数)
  • 运动世界校园正常跑但还是记不上的解决办法
  • 深圳某局联想SR850服务器黄灯 不开机维修
  • 计算机毕业设计非遗项目网站 登录注册搜索 评论留言资讯 前后台管理/springboot/javaWEB/J2EE/MYSQL数据库/vue前后分离小程序
  • 1.4 边界值分析法
  • [链接符号] 提示找不到链接符号可能
  • s3c2440——I2C
  • 物联网实践教程:微信小程序结合OneNET平台MQTT实现STM32单片机远程智能控制 远程上报和接收数据——STM32代码实现篇
  • 企业微信VS钉钉:高效办公工具推荐!
  • CentOS7查看时区、修改时区
  • 服务启动慢分析小记