基于POM项目对象模型,用于管理和构建java项目的工具,提供插件和安装一些依赖,apache组织开发
作用:
Maven坐标(定义在pom.xml中),资源中的唯一标识,通过该坐标可以唯一定位资源位置,(包括groupId(项目组织名称)\artifactId(项目名称)\version(项目版本))
project Structure->import Module->pom.xml
其实每个依赖项也都是一个一个独立的项目(jar包),要想引入,要在pom.xml中提供坐标
//比如logback-classic这个依赖
ch.qos.logback
logback-classic
1.2.3
当项目配置一个依赖,此项目会自动配置依赖所需要的依赖
//排除某依赖时
junit
junit
设置依赖范围,在(主程序|测试程序|打包)不同程序中生效
scope值 | 主程序 | 测试程序 | 打包 |
---|---|---|---|
compile | Y | Y | Y |
test | - | Y | - |
provide | Y | Y | - |
runtime | - | Y | Y |
有三套独立的生命周期历程(clean\default\site)
其中比较重要的阶段包括,clean(移除生成文件)\compile(编译)\test(测试)\package(打包)\install(安装到本地仓库)
某个阶段执行时,默认前面的阶段也会执行,即后面的阶段依赖于前面的阶段
生命周期中的某个阶段执行,都是由maven的插件完成的
官网,spring.io
spring Framework是最基础的框架,开发难度高
spring Boot是更快速建立的框架,最流行
以及各种其他框架,spring data\spring Cloud…
合称为Spring全家桶
创建spring boot module(spring官方服务器不支持springboot2.X版本,springboot3.X版本不兼容java11,需要改url为阿里镜像)
定义HelloController类,用@RestController注解请求处理类
@RequestMapping(“/helloo”)注解请求地址
运行主程序(SpringbootWebQuickstartApplication)
@RestController
public class HelloController {
@RequestMapping("/helloo")
public String hello(String name) {
System.out.println("hello world");
return "hello world";
}
}
超文本传输协议,请求和响应的规则
基于TCP协议(三次握手)
请求-响应模型,一次请求对应一次响应
HTTP是无状态的,不能共享数据(登陆信息等),但速度快
GET POST
请求行(第一行,请求方式,资源路径,协议版本)
请求头(key:value)
请求体(post请求,存放请求参数)
响应行(协议,状态码,描述)
响应头(key:value)
响应体(响应数据)
状态码:
由于自己去写请求和响应的解析代码很麻烦,要几万行代码,所以不如用别人写好的
Apache Tomcat,最流行的web服务器,用于解析http协议
Web服务器