文章目录
后端web开发
maven
概述
基于POM项目对象模型,用于管理和构建java项目的工具,提供插件和安装一些依赖,apache组织开发
作用:
- 依赖管理:方便快捷的管理项目依赖资源(jar包)
- 统一项目结构
- 项目构建,跨平台自动项目构建
pom.xml存放依赖项地址,通过访问仓库(管理jar包的仓库),使用依赖
依赖项查找顺序:本地仓库->远程仓库(私服,公司内自己的)->中央仓库(Maven团队管理的)
IDEA集成Maven
Maven坐标(定义在pom.xml中),资源中的唯一标识,通过该坐标可以唯一定位资源位置,(包括groupId(项目组织名称)\artifactId(项目名称)\version(项目版本))
导入Maven项目
project Structure->import Module->pom.xml
依赖管理
依赖配置
其实每个依赖项也都是一个一个独立的项目(jar包),要想引入,要在pom.xml中提供坐标
//比如logback-classic这个依赖
<dependencies>
<dependency>
<groupId>ch.qos.logback</groupId>
<artifactId>logback-classic</artifactId>
<version>1.2.3</version>
</dependency>
</dependencies>
依赖传递
当项目配置一个依赖,此项目会自动配置依赖所需要的依赖
//排除某依赖时
<exclusions>
<exclusion>
<groupId>junit</groupId>
<artifactId>junit</artifactId>
</exclusion>
</exclusions>
依赖范围
设置依赖范围,在(主程序|测试程序|打包)不同程序中生效
scope值 | 主程序 | 测试程序 | 打包 |
---|---|---|---|
compile | Y | Y | Y |
test | - | Y | - |
provide | Y | Y | - |
runtime | - | Y | Y |
生命周期
有三套独立的生命周期历程(clean\default\site)
其中比较重要的阶段包括,clean(移除生成文件)\compile(编译)\test(测试)\package(打包)\install(安装到本地仓库)
某个阶段执行时,默认前面的阶段也会执行,即后面的阶段依赖于前面的阶段
生命周期中的某个阶段执行,都是由maven的插件完成的
web入门
spring
官网,spring.io
spring Framework是最基础的框架,开发难度高
spring Boot是更快速建立的框架,最流行
以及各种其他框架,spring data\spring Cloud…
合称为Spring全家桶
springbootweb快速入门
创建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";
}
}
HTTP
超文本传输协议,请求和响应的规则
基于TCP协议(三次握手)
请求-响应模型,一次请求对应一次响应
HTTP是无状态的,不能共享数据(登陆信息等),但速度快
请求协议
GET POST
请求行(第一行,请求方式,资源路径,协议版本)
请求头(key:value)
请求体(post请求,存放请求参数)
响应协议
响应行(协议,状态码,描述)
响应头(key:value)
响应体(响应数据)
状态码:
- 200 处理成功
- 404 请求资源不存在
- 500 服务器异常
协议解析
由于自己去写请求和响应的解析代码很麻烦,要几万行代码,所以不如用别人写好的
Apache Tomcat,最流行的web服务器,用于解析http协议
Tomcat
Web服务器
- 对HTTP协议操作封装,简化web程序开发
- 部署web项目,对外提供网上浏览服务
Tomcat - 轻量级Web服务器,支持servlet,jsp少量javaEE规范
- 被称为web容器\servlet容器
起步依赖: - spring-boot-starter-web //基本包含web开发的全部依赖
- spring-boot-starter-test
springBootWeb内置了tomcat