第1-3章学习笔记

思维导图:
在这里插入图片描述
第一章Java Web开发概述

一、基本概念
1、Web开发的相关知识
静态Web:指任何时间访问内容都一致的Web界面(哪怕界面有动画,只要内容不变都属于静态页面)

动态Web:指访问内容随时间改变的Web界面(一般涉及到与数据库交互)

静态web技术:html/css

动态web技术:JSP/Servlet、ASP、PHP等

Java中,所有动态Web资源开发技术统称为JavaWeb

2、Web应用程序
一个Web应用程序包含多个静态web资源和动态web资源,包括例如:java程序、JSP文件、html文件、cs文件、js文件、支持jar包、配置文件等。

web应用程序开发完成后,若想要被外界访问,就要把web应用所在的目录交给web服务器管理(这个过程叫做虚拟目录的映射)

第二章搭建Java Web开发环境
在这里插入图片描述
1、常见的web服务器
Apache、Nginx、IIS、WebLogic、WebSphere、Tomcat
这些服务器之间是并列关系,但是有些服务器偏前端,擅长并发和连接数等等,有些服务器偏后端解释,所以可以根据特性可以组合使用。

2、Tomcat的目录层次结构
bin:存放启动和关闭Tomcat的脚本文件
conf:存放Tomcat服务器的配置文件
lib:存放Tomcat服务器的支撑jar包
logs:存放Tomcat的日志文件
temp:存放Tomcat运行时产生的临时文件
webapps:web应用所在的目录,即供外接访问的web资源的存放目录
work:Tomcat的工作目录

3、Web项目的目录结构
第一级目录:静态资源(包括HTML、CSS、JS)
WEB-INF
WEB-INF下的第二级目录:web.xml 项目配置文件
lib web项目的第三方jar
Class class文件存放位置

遇到的问题:
IDEA部署项目到tomcat运行成功,但是无法在浏览器直接访问静态资源html,页面一直报错404。

解决办法:经过网上查找后发现原因如下:

URL这栏是真正的访问地址,我们定义的所有访问路径都是以这个为起点
在这里插入图片描述
而下图的这个是Tomcat启动后的访问地址。如果这两个不一样的话一启动时会找不到页面。
在这里插入图片描述
第三章、HTTP协议
在这里插入图片描述
1、什么是HTTP:超文本传输协议(HTTP,HyperText Transfer Protocol)是互联网上应用最为广泛的一种网络协议,用于定义客户端浏览器和服务器之间交换数据的过程。

2、HTTP的作用和特点:

作用:可以使浏览器和服务器之间更高效的传输数据。它不仅保证计算机正确快速的额传输超文本文档,还确定传输文档中的哪一部分,以及那部分内容首先显示(如文本先于图形)等。

特点:基于响应-请求模型,先有请求后有响应,如下图:
在这里插入图片描述
3、HTTP协议的组成:HTTP请求协议(包括请求行、请求头、请求体),HTTP响应协议(包括响应行、响应头、响应体)

4、HTTP请求:客户端连上服务器后,向服务器请求某个web资源,称之为客户端向服务器发送了一个HTTP请求。请求包括了一个请求行、若干请求头、以及请求体内容,请求头和请
求体内容之间要用空行隔开。

(1)请求行:请求行里包含了HTPP的请求方式、请求资源名称、HTTP版本
例如:POST /post.htm1 HTTP/1.1
请求行格式:请求方式资源路径协议/版本

HTTP请求方式:请求行中的POST称之为请求方式,常见的请求方式有:POST、GET、DELETE、PUT
GET请求:向服务器的特定资源发出查询请求,一般用于查询数据和资源的请求中。
·get请求查询的参数可以在浏览器的地址栏中显示
·请求的数据会附加在URL之后,以?分割URL和传输数据,多个参数用&连接
·没有请求体
例:GET/get.htm1?name=xiaohong&passWord=123456 HTTP/1.1
POST请求:向服务器提交数据,一般用在客户端将本地数据或者资源提交给服务器,例如注册用户,将用户信息提交给服务器。
·POST请求会把请求的数据放置在HTTP请求体中。
例:PoST /post.html HTTP/1.1 数据name=xiaohong&passWord=123456放在请求中

使用场景:
·GET请求通常用于查询操作
·POST通常用于提交数据操作
区别:
·在HTTP规范中,没有对URL的长度和传输的数据大小进行限制。但是在实际开发过程中,对于GET请求,特定的浏览器和服务器对URL的长度有限制。因此,在使用GET请求时,传输数据会受到URL长度的限制。
·对于POST,由于不是URL传值,理论上传输数据长度是不受限制的

(2)请求头:请求头用于描述客户端请求哪台主机以及客户端的一些环境信息等。请求头以键值对(key=value)方式传递数据。

例如:
Host: 1oca1host:8080
Connection: keep-alive
Upgrade-Insecure-Requests: 1
User-Agent:Chrome/58.0.3029.110Safari/537.36
Content-Type: appl1ication/ x-www-form-ur1encoded

(3)请求体:代表着浏览器在post请求方式中传递给服务器的参数,请求体中的每一个数据都是使用键值对(key=value)形式,多个值用&连接,注:服务器在接收到请求体后需要单独解析。
(4)
例如:
name=test&passWord=123456

5.HTTP响应:一个HTTP响应代表服务器向客户端回送的数据,它包括:一个响应行、若干响应头、以及响应体,其中的一些响应头和响应体的内容都是可选的,响应头和响应体内容之间要用空行隔开。

例如:
HITP/1.1 200
Accept-Ranges: bytes
ETag: /“413-1495617981796”
Last-Modified: Wed,24 May 2017 09:26:21 GMTContent-Type: text/html
Content-Length: 413
Date: ed,24 May 2017 09:29:37 GMT

(1)响应行:响应行里包含了HTTP协议的版本,以及用于描述服务器对请求的处理结果。

例如:HTTP/1.1 200 OK
格式:协议/版本 状态码 状态码描述
状态码:服务和和浏览器用于确定状态的固定数字号码
200:请求成功
302:请求重定向
404:请求资源不存在,通常是访问路径写错了,或者服务器删除了该资源
500:服务器内部发生错误

(2)响应头:响应头用于描述服务器的基本信息,以及数据的描述,服务器通过这些数据的描述信息,可以通知客户端如何处理等一会儿它回送的数据。

例如:
Server: Microsoft-IIS/5.0
Date: Thu,13 Jul 2000 05:46:53 GMTContent-Length: 2291
Content-Type: text/htmlCache-control: private

(3)响应体:代表服务器向客户端浏览器回送的正文。

学习心得:
学了1-3章的基础知识后我发现,只要认真跟视频课程,不断地多看多刷几遍熟悉了流程,就会觉得没有那么难。按照视频步骤完成任务,即使一开始很难懂或者会遇到很多卡壳的问题,但是为了得到正确结果一直不断搜寻的过程,会对已经知道的知识有了巩固和大致框架,还会对遇到的问题有及其深刻的印象,解决完那个错误的过程会有很大的成就感,与此同时还会新增一个自己在实践中学到的自己发现的新问题的解决途径。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值