1.WEB

1.1 web

web:网页

静态web:给所有人看到的内容都是一样的

动态web:给不同的人不同时间看到的内容都是不同的

JavaWeb:JAVA中动态web资源开发技术的统称

1.2 web应用程序

web应用程序:提供给web/浏览器使用的应用程序:B/S:browse/service

对比常规电脑端应用程序C/Scomputer/service

  • html也是一种web资源,也是一种web应用程序
  • 只要能访问到的网页都以URL为导航的方式存放在某台设备上
  • 一组相关的web资源会被放在同一个文件夹里,被称为web应用

!!一个web应用由多部分组成:静态web 动态web

  • html css js
  • jsp servlat
  • jar
  • config
  • java

1.3 静态web

缺点:

  • 所有的用户看到的都只是Index,只有Index被更新的时候,用户看到的页面才会被更新
  • 静态web只能做到伪动态,JS
  • 静态web的数据无法持久化,无法与数据库互动!

1.4 动态web

页面的展示会因人而异!!

缺点:

  • 如果动态web寄了,要停机维护

2.Web 服务器(web server)

2.0 概念

!!!后端就是服务器!!!

!!!服务器不是WebServer!!!

**Web服务器就是用来接受请求并发送响应的东东。**只是 处理web资源的交互!!

JAVA初学时服务器是挂在电脑上的Tomcat

WebServer交互的东西有两部分:数据文件和HTTP 都可以用Servlet搞定

  • 数据文件 :web资源or客户端浏览器前端JS需要的数据(JSON格式…)(静态Or动态)…
  • HTTP:请求行 请求头 响应头…

并不是之前理解的服务器/计算机是Web服务器,而是挂在服务器上的WebServer应用/软件才是网站交互流程中的“服务器”

后端包括了交互部分(WebServer)静态web资源动态web资源数据库(包括接口JDBC)

静态web:static文件夹

动态web : 动态渲染网页,与数据库联通的部分,可以实现数据的持久化(Servlet等)

WebServer和FileSystem都放在服务器计算机上,服务器/计算机就是后端。

2.1 技术\web服务器的实现手段\语法(脚本语言)

ASP PHP JSP

2.2 应用文件常见配置(以Tomcat为例)

应用文件的配置及一些基础知识: 看 多线程 和 反射课程

bin : 放一些启动关闭的脚本文件

config : 放一些配置文件

lib : 一些插件依赖的jar包

Logs : 日志

webapps : 存放网站

文件夹基本信息↑

3.Tomcat

3.1 install

3.2 config配置

可以改所有!端口,主机,网站。。。

3.3 网站访问流程

3.4 发布一个网站

发布:

对比:

未发布:file:///C:/Users/jyz/Desktop/test.html

发布后:http://localhost:8080/jokerstudy/

发布方法:

发布位置:tomcat的webapps文件夹,里面的每个文件夹都是一个web应用

web应用的常见目录表述:

4.Http

4.0 个人理解

用于请求传递,信息交互,用统一的格式:HTTP

4.1 概念

超文本传输协议:hyper text transfer protocol

文本: html string

超文本: 图像 多媒体 音频 定位 地图 。。。

是一个简单的请求-响应协议,它通常运行在TCP之上。

4.2 历史

HTTP1.0

客户端与web server请求后,只能访问一个web资源

HTTP1.1

客户端与web server连接后,可以访问多个web资源

省流量!

4.2.5 HTTP General

请求URL: https://www.baidu.com/
请求方法: GET
状态代码: 200 OK
远程地址: 112.80.248.76:443
引用站点策略: unsafe-url
Request URL: https://www.baidu.com/
Request Method: GET
Status Code: 200 OK
Remote Address: 112.80.248.76:443
Referrer Policy: unsafe-url

4.3 HTTP request

Accept:text/html
Accept-Encoding: gzip, deflate, br
Accept-Language: zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6
Connection: keep-aliveCookie: PSTM=1648102684; BAIDUID=6FDE9524B733506FFF7D5565EADD4F74:FG=1; BD_UPN=12314753; BIDUPSID=6990BEC3F7135BE698BCE225A7A65EBF;
Host: www.baidu.com
Referer: https://www.baidu.com/
sec-ch-ua: " Not A;Brand";v="99", "Chromium";v="100", "Microsoft Edge";v="100"
sec-ch-ua-mobile: ?0
sec-ch-ua-platform: "Windows"
Sec-Fetch-Dest: document
Sec-Fetch-Mode: navigate
Sec-Fetch-Site: same-origin
Upgrade-Insecure-Requests: 1
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/100.0.4896.60 Safari/537.36 Edg/100.0.1185.29

1.请求行

请求的URL+请求的Methods

请求方式: GET POST *RESTful风格:*HEAD DELETE PUT TRACT…

GET:高效不安全容量小

POST:安全不搞笑容量大

2.请求头/消息头

Accept:text/html                                                    告诉浏览器,他所支持的数据类型
Accept-Encoding: gzip, deflate, br                                  支持的编码方式
Accept-Language: zh-CN,zh;q=0.9,en;q=0.8,en-GB;q=0.7,en-US;q=0.6    支持的语言
Connection: keep-alive                                              告诉浏览器,请求完成是断开连接还是保持连接

HTTP协议的消息的目标对象是两侧的人:客户端和服务器

4.4 HTTP response

Bdpagetype: 1Cache-Control: private
Connection: keep-alive
Content-Encoding: gzip
Content-Type: text/html;charset=utf-8
Date: Sat, 09 Apr 2022 03:45:23 GMTExpires: Sat, 09 Apr 2022 03:45:22 GMT
Server: BWS/1.1
Set-Cookie: BDSVRTM=0; path=/
Set-Cookie: BD_HOME=1; path=/
Set-Cookie: H_PS_PSSID=35836_36175_31660_36021_34813_36167_34584_36140_36120_35978_36125_36234_26350_36102_36061; path=/; domain=.baidu.com
Strict-Transport-Security: max-age=172800
Traceid: 1649475923033382759416205506190196399781
Transfer-Encoding: chunked
X-Frame-Options: sameorigin
X-Ua-Compatible: IE=Edge,chrome=1

4.5 webserver交互过程的模型

5.Cookie Session

5.1 会话

Def:打开浏览器一通浏览操作直到关闭浏览器-------->一次会话

有状态会话: 算得上留下脚印 的会话

类比

你,怎么证明你是团学的

你 -------------- 团学

方案一:聘书 团学给你发聘书

方案二:团学登记 团学完整的登记了你

在web中

一个网站,怎么证明你来过

客户端 ------------- 服务器

方案一:发一个cookie/发一个小饼干/发一个标记 Cookie

方案二:网站详细地登记了你的信息 Session

5.2 会话的两种保存方法

Cookie:客户端技术

  • ? 响应,请求

Session:服务器技术

  • 可以保存用户的会话信息,把信息数据放在Session中

Web开发浅涉(以JAVA为例)相关推荐

  1. web自动化如何在不同浏览器运行_如何给树莓派搭建WEB开发运行环境之JAVA篇

    在上一篇,我们已经脱掉了她华丽的外衣,你不用再添加任何华而不实的装饰,一切都交给CLI来搞定.树莓派WEB开发运行环境之JAVA篇,只需5个步骤: 安装JAVA开发包 安装和运行maven 创建JAV ...

  2. 如何给树莓派搭建WEB开发运行环境之JAVA篇

    在上一篇,我们已经脱掉了她华丽的外衣,你不用再添加任何华而不实的装饰,一切都交给CLI来搞定.树莓派WEB开发运行环境之JAVA篇,只需5个步骤: 安装JAVA开发包 安装和运行maven 创建JAV ...

  3. 零基础学java web开发pdf_新手学Java Web开发.pdf

    作 者 :杨磊等编著 出版发行 : 北京:北京希望电子出版社 , 2010.01 ISBN号 :978-7-89498-988-8 页 数 : 480 丛书名 : 新手学编程系列 原书定价 : 49. ...

  4. 零基础学java web开发 pdf_从零开始学Java Web开发 PDF 扫描版[69M]

    java web是目前最流行的动态网页开发技术之一.本书由浅入深.循序渐进,使零基础的读者能够熟练掌握如何使用java web开发应用程序系统. 本书分为4部分,第一部分是java语言基础篇,包括ja ...

  5. java web开发(一) Java Web开发框架对比

    java web 非本人研究方向,只是作为拓展知识涉猎范围  原文链接:http://www.importnew.com/7957.html Web框架有点像酸酵母,你要么喜欢它,要么讨厌它!什么?你 ...

  6. web开发选择php还是java

    php相对java来说易学,且开发成本低,因为lamp平台几乎免费,且全部开源,故学习成本低.能找的资源很多,又因为php的开发不常驻内存,大多开源项目都能哪来进行二次开发,故在快速开发领域,php绝 ...

  7. Day 6:在 Java 虚拟机上使用 Grails 进行快速 Web 开发

    在"30天学习30种新技术"的第六天,我决定去学习一个 web 开发框架 : Grails. Grails 是一个基于 Groovy 和 Java 的开源 Web 框架.它是 Ja ...

  8. 贯通Java Web开发三剑客

    2019独角兽企业重金招聘Python工程师标准>>> 贯通Java Web开发三剑客 内容简介 本书分为六篇共19章,包括基础知识.Eclipse工具的介绍.Tomcat工具以及S ...

  9. java目前开发的背景_Java web 开发构想[一] 背景和形势

    [Java web 开发构想系列 转自JavaEye社区,在此申明] 1.背景.形势 能够进行Web开发的编程语言和技术很多 (1) 动态解释语言 PHP; Perl; Python (Zope, P ...

最新文章

  1. 清华芯片研究再获顶会MICRO加持:软件定义芯片团队出品,最佳论文提名后又一突破...
  2. document,element,node方法
  3. Tomcat8中的并发ConcurrentDateFormat的实现
  4. Bootstrap4 网格系统
  5. android LayoutInflater.inflate()的参数及其用法
  6. 谷歌街景新功能——帮警方抓毒贩
  7. CCIE-LAB-第一篇-教学导入环境
  8. 学成在线--2.CMS前端页面查询开发
  9. 主成分分析法案例_因子分析案例及操作解析
  10. Ubuntu下绘图软件krita64位无中文问题
  11. python计算机中丢失api-ms-win-crt-runtime-l_api-ms-win-crt-runtime-l1-1-0.dll
  12. 算法----并行算法
  13. mysql 5.7 严格模式_mysql 5.7中严格模式的问题
  14. (转)美国:2016-2045新科技趋势报告
  15. c语言在线考试系统的需求分析,在线考试系统需求分析.doc
  16. JSP教程 JSP教程 JSP教程 JSP教程 JSP教程 JSP教程
  17. 苹果平板做ppt方便吗_“你不是大学生吗,怎么连PPT都做不好?”
  18. 创建新环境出现报错Collecting package metadata (current_repodata.json): failed.问题成功解决。
  19. 逻辑强化(03)真假推理 知识练习
  20. 多媒体-用windows自带录音机录音(转载)

热门文章

  1. 小青蛙oracle跟踪,《小青蛙》三实践三反思观课报告
  2. MIDI 音乐程序设计 (可以自己编曲的快乐)
  3. 性能测试工具:如何录制脚本?
  4. C语言数据结构实现——一元多项式的基本运算
  5. 互斥事件的概念和公式_高中数学典型例题分析与解答:互斥事件
  6. 【目标】给2022下半年的自己定几个计划
  7. Illustrator script 脚本 基本的使用
  8. Spring三大核心思想
  9. 争做社会主义接班人!!!
  10. 【electron】应用在线升级