玛卡巴卡的卡巴卡玛 发表于 2022-9-1 13:09:37

Javaweb-Http、Maven及Servlet详解

一、Http

1.什么事Http

Http(超文本传输协议)是一个简单的请求-响应协议,它通常运行在TCP之上

[*]文本:html,字符串,~..
[*]超文本:图片,音乐,视屏,定位,地图...
[*]端口为80
Https:安全的,端口号443
2.两个时代


[*]http1.0

[*]HTTP/1.0:客户端可以与web服务器连接后,只能获得一个web资源,断开连接

[*]http2.0

[*]HTTP/1.1:客户端可以与web服务器连接后,可以获得多个web资源

3.Http请求


[*]客户端--发请求(requset)--服务器
百度:
Request URL: https://www.baidu.com/    请求地址
Request Method: GET      get方法/post方法
Status Code: 200 OK      状态码:200
Remote(远程地址) Address: 39.156.66.14:443Accept: text/html
Accept-Language: zh-CN,zh;q=0.9
Cache-Control: max-age=0
Connection: keep-alive(1)请求行


[*]请求行中的请求方式:get
[*]请求方式:Get,Post

[*]Get:请求能够携带的参数比较少,大小有限制,会在浏览器的URL地址栏显示数据内容,不安全,但高效
[*]Postget:请求能够携带的参数没有限制,大小没有限制,不会在浏览器的URL地址栏显示数据内容,安全,但不高效

(2)消息头

Accept: 告诉浏览器,他所支持的数据类型
Accept-Language: zh-CN,zh;q=0.9,告诉浏览器,它的语言环境
Cache-Control: max-age=0: 缓存控制
Connection: keep-alive:告诉浏览器,请求完成是断开还是保持连接
HOST:主机 4.Http响应


[*]服务器--响应--客户端
百度:
Cache-Control: private   
Connection: keep-alive
Content-Encoding: gzip
Content-Type: text/html;charset=utf-8(1)响应体

Accept: 告诉浏览器,他所支持的数据类型
Accept-Language: zh-CN,zh;q=0.9,告诉浏览器,它的语言环境
Cache-Control: max-age=0: 缓存控制
Connection: keep-alive:告诉浏览器,请求完成是断开还是保持连接
HOST:主机Refresh:告诉客户端,多久刷新一次;Location:让网页重新定位(2)响应状态码

200:请求响应成功3xx:请求重定向

[*]重定向:你重新到我给你新位置去;
4xx:找不到资源

[*]资源不存在
5xx:服务器代码错误 500 ,502:网关错误
常见面试题:
当你的浏览器中地址栏输入地址并回车的一瞬间到页面能够展示回来,经历了什么?
二、Maven

为什么要学习这个技术?

[*]在Javaweb开发中,需要使用大量的jar包,我们手动去导入
[*]如何能够让一个东西自动帮我导入和配置这个jar包,由此,Maven诞生了
1.Maven项目架构管理工具

我们目前用来就是方便导入jar包的Maven的核心思想:约定大于配置

[*]有约束,不要去违反
Maven会规定好你该如何去编写我们的Java代码,必须要按照这个规范来;
2.下载安装Maven

下载链接https://maven.apache.org/download.cgi
https://dis.qidao123.com/imgproxy/aHR0cHM6Ly9pbWcyMDIyLmNuYmxvZ3MuY29tL2Jsb2cvMjkwMTUzMS8yMDIyMDcvMjkwMTUzMS0yMDIyMDcyMjE3MDExMTU5MS0yNDk5Mzk1MzkucG5n
3.配置Maven环境变量

Mac终端输入vim ~/.bash_profile然后将以下配置加入里面
MAVEN_HOME=/Users/twq/Downloads/apache-maven-3.8.6
PATH=$MAVEN_HOME/bin:$PATH
M2_HOME=/Users/twq/Downloads/apache-maven-3.8.6/bin
export MAVEN_HOME
export PATH
export M2_HOME最后输入 mvn -v
出现如下图表名配置成功
https://dis.qidao123.com/imgproxy/aHR0cHM6Ly9pbWcyMDIyLmNuYmxvZ3MuY29tL2Jsb2cvMjkwMTUzMS8yMDIyMDcvMjkwMTUzMS0yMDIyMDcyMjE3MDUzNTg4NS01Njc5NjYxNzkucG5n
Windows:
在环境变量中添加M2_home和MAVEN_HOME两个路径
https://dis.qidao123.com/imgproxy/aHR0cHM6Ly9pbWcyMDIyLmNuYmxvZ3MuY29tL2Jsb2cvMjkwMTUzMS8yMDIyMDcvMjkwMTUzMS0yMDIyMDcyMjE3MDgzMzIyNC0xNjg5NTQxNzIwLnBuZw==
并继续添加PATH的路径
https://dis.qidao123.com/imgproxy/aHR0cHM6Ly9pbWcyMDIyLmNuYmxvZ3MuY29tL2Jsb2cvMjkwMTUzMS8yMDIyMDcvMjkwMTUzMS0yMDIyMDcyMjE3MTAzOTcxOC0xMDM4NjE3MTA0LnBuZw==
4.配置阿里云镜像


[*]镜像:mirrors

[*]作用:加速我们的下载

[*]国内建议使用阿里云的镜像
<mirror>
      <id>nexus-aliyun</id>
      <mirrorOf>*,!jeecg,!jeecg-snapshots</mirrorOf>
      <name>Nexus aliyun</name>
      <url>http://maven.aliyun.com/nexus/content/groups/public/</url> </mirror> 将此配置放入setting.xml的mirrors中即可
https://dis.qidao123.com/imgproxy/aHR0cHM6Ly9pbWcyMDIyLmNuYmxvZ3MuY29tL2Jsb2cvMjkwMTUzMS8yMDIyMDcvMjkwMTUzMS0yMDIyMDcyMjE3MjIxNzgwMS04MzQ2NjYyNzgucG5n
5.设置本地仓库

创建一个本地仓库/Users/twq/Downloads/apache-maven-3.8.6/maven-repo
页: [1]
查看完整版本: Javaweb-Http、Maven及Servlet详解