前言

  • Java Web 其实就是一个技术的总和,把Web看成一个容器而已主要使用JavaEE技术来实现.在加上各种中间件。
  • 整个javaWeb阶段的内容通过实际的案例贯穿学习, 所涉及到的技术知识点会在案例中根据不同的需求引入。
  • 首先了解javaWEB的整个技术体系,掌握常用的技术知识点。

我会将JavaWeb分为8篇左右的文章来记录自己的学习过程,也方便大家逐级递增难度的学习,如有错误或遗漏欢迎大家指出。

下面我们进入正题!

1、基本概念

1.1、前言

web开发:

  • web,网页的意思
  • 静态web
    • html,css
    • 提供给所有人看的数据始终不会变化
  • 动态web
    • 淘宝,几乎所有的网站
    • 提供给所有人看的数据始终会变化,每个人在不同时间不同地点看到的信息各不相同
    • 技术栈:Servlet/JSP,ASP,PHP

在Java中,动态web资源开发的技术统称为JavaWeb

1.2、web应用程序

web应用程序:可以提供浏览器访问的程序

  • a.html b.html......多个web资源,这些web资源可以被外界访问,对外界提供服务

  • 我们能访问到的任何一个页面或者资源,都存在于这个世界上的某一个角落的计算机上

  • URL

  • 这些统一的web资源会被放在同一个文件夹下,web应用程序---->Tomcat:服务器

  • 一个web应用由多部分组成(静态web 动态web)

    • html,css,js
    • jsp,servlet
    • java程序
    • jar包
    • 配置文件

web应用程序编写完毕后,若想提供给外界访问,需要一个服务器来统一管理

1.3、静态web

  • *.html, *.html,这些都是网页的后缀,如果服务器上一直存在这些东西,我们就可以直接进行读取

  • 静态web存在的缺点

    • web页面无法动态更新,所有用户看到的都是同一个页面

      • 轮播图,点击特效:伪动态
      • JavaScript(实际开发中使用最多)
      • VBScript
    • 它无法和数据库交互(数据无法持久化,用户无法交互)

1.4、动态web

页面会动态展示:web的页面展示的效果因人而异(不同的人打开的页面是不一样的)

缺点

  • 加入服务器的动态web资源出现了错误,我们需要重新编写我们的后台程序,重新发布(停机维护)

优点

  • web页面可以动态更新,所有用户看到的都不是同一个页面
  • 它可以和数据库交互(数据持久化:注册,用户信息)

2、web服务器

2.1、技术讲解

ASP:

  • 微软:国内最早流行的就是ASP
  • 在html中嵌入了VB的脚本,ASP+DOM
  • 在ASP开发中,基本一个页面都有几千行的业务代码,页面极其混乱
  • 维护成本高
  • C#

PHP:

  • 开发速度很快,功能很强大,跨平台,代码简单
  • 无法承载大访问量的情况(局限性)

JSP/Servlet:

  • sun公司主推的B/S架构
  • 基于Java语言
  • 可以承载高并发,高可用,高性能带来的影响
  • 语法像ASP

2.2、web服务器

服务器是一种被动的操作,用来处理用户的一些请求和给用户一些响应信息

IIS:

  • 微软
  • ASP
  • Windows中自带的

Tomcat

Tomcat是Apache 软件基金会(Apache Software Foundation)的Jakarta 项目中的一个核心项目,最新的Servlet 和JSP 规范总是能在Tomcat 中得到体现,Tomcat 5支持最新的Servlet 2.4 和JSP 2.0 规范。因为Tomcat 技术先进、性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为比较流行的Web 应用服务器。

Tomcat 服务器是一个免费的开放源代码的Web 应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP 程序的首选。对于一个初学者来说,他是最佳选择

Tomcat 实际上运行JSP 页面和Servlet。另外,Tomcat和IIS等Web服务器一样,具有处理HTML页面的功能。

下载Tomcat:

  • 安装/解压
  • 了解配置文件及目录结构
  • 作用

3、Tomcat

3.1、安装Tomcat

在安装之前给大家提一个建议,我在学习新知识的过程中经常会到软件版本不匹配报错的问题,而且经常卸载安装好几次也不成功,

所以建议大家在安装之前先去查看以下版本匹配的问题(不是最新的版本就是最好的),我在这里使用是Tomcat9

具体的下载流程大家可以参考以下博客,tomcat安装及配置教程(保姆级)_爱你的阿白~的博客-CSDN博客_tomcat安装及配置教程

3.2、Tomcat启动和配置

文件夹作用:

启动,关闭Tomcat:

可能遇到的问题:

  1. Java环境变量没有配置
  2. 闪退问题:需要配置兼容性
  3. 乱码问题:配置文件中设置

3.3、配置



可以配置启动的端口号

  • Tomcat默认端口号为8080
  • Mysql:3306
  • http:80
  • https:443

可以配置主机的名称

  • 默认的主机名为:localhost->127.0.0.1
  • 默认网站应用存放的位置为:webapps

思考问题

网站是如何进行访问的:

  1. 输入一个域名:回车
  2. 检查本机的hosts配置文件下有没有这个域名映射
    1. 有--->直接返对应的IP地址,这个地址中有我们需要访问的web程序,可以直接访问
    2. 没有--->去DNS服务器寻找(找到就返回,找不到就返回找不到)

3.4、发布一个web网站

  1. 将自己写的网站放到服务器(Tomcat)指定的webapp的文件夹下,就可以访问了

网站应该有的结构:

--webapps : Tomcat服务器的web目录
--ROOT
--Qstudy : 网站的目录名
--index.html : 默认的首页
--static
--css
--js
--img
--...
--WEB-INF
--classes : java程序
--lib : web应用所依赖的jar包
--web.xml : 网站的配置文件

好啦,JavaWeb的第一篇文章就结束啦ヾ(´▽‘)ノ,大家觉得还可以的话可以点击推荐支持一下博主啊

JavaWeb--基本概念、Web服务器与Tomcat的更多相关文章

  1. web服务器与tomcat

    web服务器与tomcat 服务器分类: 硬件服务器和软件服务器 web服务器: 提供资源供别人访问 web: 网页的意思,资源. web资源分类: 动态的web资源:内容有可能发生改变的 静态的we ...

  2. WEB服务器,TOMCAT和servlet之间的关系

    WEB服务器,TOMCAT和servlet之间的关系 什么是WEB服务器Web服务器是指能够为发出请求的浏览器提供文档的程序.服务器是 一种被动程序,只有浏览器发出请求的时候才会响应.应用层使用 的是 ...

  3. WEB服务器(Tomcat)

    在小型的应用系统或有特殊需要的系统中,也可以使用一个免费的Web服务器: Tomcat,该服务器支持全部的JSP以及Servlet 规范, 下载 Tom 查看计算机上被占用端口号的情况: 使用Fpor ...

  4. web服务器、tomcat、servlet是什么?它们之间的关系又是什么?

    今天偶然看到常见web服务器的介绍有Apache HTTP server.Nginx.Microsoft IIS.GWS,心中不禁产生了疑问,这些都是什么呢?一直认为tomcat就是web服务器,以下 ...

  5. Web服务器和Tomcat

    Web服务器常用: WebLogic:是BEA公司的推出的产品,现在已经被oracle收购,是目前应用最广泛的Web服务器,支持JavaEE规范,商用收费,开发者可以免费使用. WebSphere:I ...

  6. 重温web服务器--细说Tomcat服务器

    从大学开始接触java web的开发时就开始使用tomcat部署web项目,对它的理解仅仅停留在"这是个开源免费的servlet容器"的阶段,后来也接触了一些tomcat的体系,原 ...

  7. Web服务器讲解与JavaWeb应用部署(本机,以Tomcat为例)

    转载请注明原文地址:http://www.cnblogs.com/ygj0930/p/6042290.html 在讨论Web系统发布之前,我们先来辨析两个概念:服务器.Web服务器. 通常,我们说的服 ...

  8. (转)Linux整合apache和tomcat构建Web服务器

    原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://wenzhongxiang.blog.51cto.com/6370734/1285 ...

  9. Web服务器父与子 Apache和Tomcat区别

    http://developer.51cto.com/art/201007/210894.htm 熟悉三国的朋友都知道曹操,曹操有二十五个儿子,其中最得曹操宠爱的是曹丕.曹植.曹彰三个,曹丕性格阴冷, ...

随机推荐

  1. Vagrant之CentOS

    Vagrant之CentOS Vagrant官网 https://www.vagrantup.com https://app.vagrantup.com/boxes/search https://ap ...

  2. MySQL基准测试工具

    一.基准测试 基准测试(benchmark)是针对系统设计的一种压力测试. 基准测试是简化了的压力测试. 1.1 常见指标 TPS QPS 响应时间 并发量 1.2 收集与分析数据脚本 收集数据的sh ...

  3. 《Unix 网络编程》08:基本UDP套接字编程

    基本UDP套接字编程 系列文章导航:<Unix 网络编程>笔记 UDP 概述 流程图 recvfrom 和 sendto #include <sys/socket.h> ssi ...

  4. 在windows下使用s3cmd和s3browser来管理amazon s3的笔记

    S3是Amazon S3的简称,s3cmd是一款命令行工具用来管理s3,同时还有一款图形化的管理工具:s3 browser. 因为绝大多数用户都是在linux下管理s3,而我们的打包机是在window ...

  5. unittest框架里的常用断言方法:用于检查数据

    1.unittest框架里的常用断言方法:用于检查数据. (1)assertEqual(x,y) 检查两个参数类型相同并且值相等.(2)assertTrue(x) 检查唯一的参数值等于True(3)a ...

  6. HtmlParse:一款超轻量级的HTML文件解析和爬取工具

    HtmlParse 是一款基于windwos平台的HTML文档解析工具,可快速构建DOM树,从而轻松实现网页元素的爬取工作.DOM树就是一个HTML文档的节点树,每个节点由:标签(Tag).属性(At ...

  7. 【Redis】skiplist跳跃表

    有序集合Sorted Set zadd zadd用于向集合中添加元素并且可以设置分值,比如添加三门编程语言,分值分别为1.2.3: 127.0.0.1:6379> zadd language 1 ...

  8. cve-2021-42287和cve-2021-42278漏洞复现

    一.漏洞概述 cve-2021-42287 : 由于Active Directory没有对域中计算机与服务器账号进行验证,经过身份验证的攻击 者利用该漏洞绕过完全限制,可将域中普通用户权限提升为域管理 ...

  9. 02 CSS块级元素和行内元素

    02 CSS块级元素和行内元素 划分依据:根据标签内部可以存放的元素内容不同进行划分,它与CSS样式无关. 要先了解这个 得先了解 什么是容器级别的标签和文本级? 容器级标签 什么是容器级标签? 内部 ...

  10. jieba分词的功能和性能分析

    jieba分词问题导引 用户词典大小最大可以有多大 用户词典大小对速度的影响 有相同前缀和后缀的词汇如何区分 对比百度分词的API 问题一:词典大小 从源码大小分析,整个jieba分词的源码总容量为8 ...