JavaWeb学习日记4-maven,Web入门

Maven

  • apache旗下的一个开源项目,用于管理和构建java项目的工具
  • 作用
    • 依赖管理
      • 快捷管理项目依赖的资源(如jar包),还可以避免版本冲突的问题
      • 在maven项目的porn.xml中进行配置dependency,maven会自动联网下载对应依赖
    • 统一项目结构
      • eclipse,IDEA等工具目录结构有差别,但使用maven就可以统一项目结构进行导入
      • main文件夹:存放实际项目资源
        • java文件夹:java源代码
        • resources文件夹:配置文件目录
      • test文件夹:测试项目目录
      • pom.xml:项目配置文件
    • 标准化的项目构建流程
      • 清理,编译,测试,打包,发布
      • 编译:点击右侧Maven面板,在Lifecycle中双击compile,编译好的文件会存放在target目录下。其他指令类似。

Maven介绍+安装

官网:Maven – Welcome to Apache Maven

  • Maven中,可以通过pom.xml中的一小段信息来描述Maven工程
    • 组织groupId,模块名称artifactId,版本version
  • Maven仓库
    • 本地仓库
      • 本地计算机中,可以制定目录
      • 中央仓库:全球唯一,由Maven团队维护
      • 远程仓库:一般是公司团队搭建的私有仓库(等会儿偷偷用阿里云的仓库)

Maven安装

1.解压,2.配置本地仓库,3.配置阿里云私服,4.配置环境变量

视频是3.6.1,我之前已经下了3.8.4版本

  • 我自己的配置
    • <localRepository>D:\code\Environment\apache-maven-3.8.4\maven-repo</localRepository>
    • <mirror>
           <id>nexus-tencentyun</id>
           <mirrorOf>*</mirrorOf>
           <name>Nexus tencentyun</name>
           <url>http://mirrors.cloud.tencent.com/nexus/repository/maven-public/</url>
          </mirror> 
        </mirrors>
    • 已经偷了腾讯的镜像地址,不偷阿里云的了
  • 验证
    • mvn -v
    • Maven要运行,至少要使用11版本的jdk,这里我还是1.8,火速去弄一个高版本来
    • 火速下载了jdk17,修改了JAVA_HOME环境变量

IDEA集成Maven

配置Maven环境

1.配置当前工程的Maven环境

2.配置全局

  • file-close project-customize-all settings
  • build,execution,deployment-build tools-maven
  • 我自己的配置情况

Maven坐标

  • Maven中的坐标是资源的唯一标识,通过坐标可以唯一定位资源位置
  • 使用坐标来定义项目或引入项目中需要的依赖
  • Maven坐标主要组成
    • groupId
      • 定义当前Maven项目隶属组织名称
    • artifactId
      • 定义当前Maven项目名称(通常是模块名称)
    • version
      • 定义当前项目版本号

依赖管理

依赖配置

  • 依赖指当前项目运行所需要的jar包,一个项目中可以引入多个依赖
  • 配置
    • 在pom.xml中编写<dependencies>标签
    • 在<dependencies>标签中,使用<dependency>引入坐标
    • 定义坐标的groupId,artifactId,version
    • 点击刷新按钮,引入最新加入的坐标
  • 检查依赖是否成功添加可以查看右侧Maven面板
  • 没有依赖提示:

依赖传递

  • 依赖具有传递性
  • 排除依赖
    • 在项目中可以主动断开依赖的资源,被排除的资源无需指定版本
    • <exclusions>,<exclusion>

依赖范围

  • 依赖的jar包,默认情况下可以在任何地方使用,可以使用<scope>设置其作用范围
  • compile,text,provided,runtime

生命周期

  • Maven的生命周期是为了对所有maven项目构建过程进行抽象和统一
  • Maven中有3套相互独立的生命周期
    • clean:清理
    • default:核心工作,如编译、测试、打包等
    • site:生成报告,发布站点等
  • 在同一套生命周期中,当运行后面的阶段时,前面的阶段都会运行

Web入门

spring官网spring.io

SpringBootWeb快速入门

http协议

http概述

  • 规定了浏览器和服务器之间数据传输的规则
  • 一次请求对应一次相应
  • HTTP协议是无状态的协议,对事务没有记忆能力,每次请求-响应都是独立的

http请求协议

  • 请求行
    • 请求方式GET/POST
    • 请求路径
    • 协议及版本
  • 请求头
    • key:value
  • 请求体
    • POST请求特有,存放请求数据

http响应协议

  • 相应行
    • 协议及协议版本
    • 响应状态码
    • 描述
  • 响应头
    • key:value
  • 响应体
    • 存放响应数据

http解析

  • 通过Socket处理请求

Tomcat

Web服务器

  • 是一个软件程序,对HTTP协议的操作进行了封装
  • SpringBoot内置了Tomcat

SpringBoot中Tomcat

  • 39
    点赞
  • 30
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值