• Day37-Http、Maven


    Day37-Http、Maven

    Http

    什么是Http

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

    • 文本:html,字符串,…
    • 超文本:图片、音乐、视频、定位,地图…
    • 默认端口:80

    Https:(安全的)

    • 默认端口:443

    两个时代

    • http1.0

      • HTTTP/1.0:客户端可以与web服务器连接后,只能获得一个web资源,断开连接
    • http2.0

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

    Http请求

    • 客户端—发请求(Request)—服务器

    百度:

    请求 URL: https://www.baidu.com/   请求地址
    请求方法: GET    //get/post方法
    状态代码: 200 OK   状态码
    远程地址: 112.80.248.75:443
    
    • 1
    • 2
    • 3
    • 4
    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 //语言
    Cache-Control: max-age=0
    Connection: keep-alive
    
    • 1
    • 2
    • 3
    • 4
    • 5
    1. 请求行
    • 请求行中的请求方式:GET
    • 请求方式:GET、Post、HEAD、DELETE、PUT、TRACT…
      • get:请求能够携带的参数比较少,大小有限制,会在浏览器的URL地址栏显示数据内容,不安全,但高效
      • post:请求能够携带的参数没有限制,大小没有限制,不会在浏览器的URL地址栏显示数据内容,安全,但不高效
    1. 消息头
    Accept: 告诉浏览器,它所支持的数据类型
    Accept-Encoding: 支持哪种编码格式,GBK  UTF-8  GB2312  ISO8859-1
    Accept-Language: 告诉浏览器,它的语言环境
    Cache-Control: 缓存控制
    Connection: 告诉浏览器,请求完成是断开还是保持连接
    Host:主机
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6

    HTTP响应

    • 服务器—响应—客户端

    百度

    Cache-Control: private  //表示仅客户端还可以缓存,代理服务器不能缓存
    Connection: keep-alive    //连接
    Content-Encoding: gzip    //编码
    Content-Type: text/html; charset=utf-8   //类型
    
    • 1
    • 2
    • 3
    • 4
    1. 响应体
    Accept: 告诉浏览器,它所支持的数据类型
    Accept-Encoding: 支持哪种编码格式,GBK  UTF-8  GB2312  ISO8859-1
    Accept-Language: 告诉浏览器,它的语言环境
    Cache-Control: 缓存控制
    Connection: 告诉浏览器,请求完成是断开还是保持连接
    Host:主机
    Refrush:告诉客户端多久刷新
    Location:让网页重新定位
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    1. 响应状态码
    200:请求响应成功
    3xx:请求重定向
        重定向:你重新到我给你的新位置去;
    4xx:找不到资源,资源不存在(4045xx:服务器代码错误(500502:网关错误
    
    • 1
    • 2
    • 3
    • 4
    • 5

    常见面试题:

    当你的浏览器中地址栏输入地址并回车的一瞬间到页面能够展示出来,经历了什么?

    Maven

    我为什么要学习这个技术?

    1. 在java开发中,需要使用大量的jar包,我们需要手动导入;
    2. 如何能够让一个东西自动帮我们导入和配置这些jar包。

    由此Maven诞生了

    Maven项目架构管理工具

    我们目前用来就是方便导入jar包的!

    Maven的核心思想:约定大于配置

    • 有约束,不要去违反。

    Maven会规定好你该如何去编写我们的java代码,必须按照这个规范来

    下载安装Maven

    [下载官网](Maven – Welcome to Apache Maven)

    在这里插入图片描述

    下载完成后,解压即可;

    配置环境变量

    系统环境变量

    配置如下配置

    • M2_HOME mave目录下的bin文件的路径
    • MAVEN_HOME maven目录的路径

    在这里插入图片描述

    • 在系统的Path中配置%MAVEN_HOME%\bin

    在这里插入图片描述

    在这里插入图片描述

    测试:

    在控制台输入mvn -version

    环境配置成功如图:

    在这里插入图片描述

    阿里云镜像

    • 镜像:mirros

      • 作用:加速我们的下载
    • 国内建议使用阿里云的镜像

      <mirror>
          <id>nexus-aliyunid>
          <mirrorOf>centralmirrorOf>
          <name>Nexus aliyunname>
          <url>http://maven.aliyun.com/nexus/content/groups/publicurl>
      mirror>
      
      • 1
      • 2
      • 3
      • 4
      • 5
      • 6

    插入到maven的配置文件中

    1. 选择conf

    在这里插入图片描述

    1. 选择setting

    在这里插入图片描述

    1. 插入到mirrors中

    在这里插入图片描述

    本地仓库

    在本地的仓库,远程仓库;

    建立一个仓库:localRepository

    在maven目录新建maven-repo文件夹

    在这里插入图片描述

    在setting中重新设置仓库

    设置前

    在这里插入图片描述

    设置后

    在这里插入图片描述

    (仓库路径为maven-repo文件夹路径)

  • 相关阅读:
    推荐给所有程序员!这份“Netty 最强宝典”你不服不行(实战 + 权威指南 + 项目 + 面试题库)
    代码随想录二刷 Day48
    u盘文件损坏怎么恢复数据 U盘插上就让格式化是坏了吗?
    【数据结构】二叉树链式结构的实现
    六、01【Java 多线程】之重温操作系统
    Etcd 常用命令与备份恢复
    【JAVASE】面向对象的三大特征
    熟悉MySQL OCP和Oracle OCP和考试真实界面
    华为路由器MPLS VPN综合实验
    面试前“啃完”这份Java架构全栈知识点,金九银十过五关斩六将!
  • 原文地址:https://blog.csdn.net/GHY0911/article/details/126495483