0 SpringBoot 配置优先级
从上到下
虽然 springboot 支持多种格式配置文件,但是在项目开发时,推荐统一使用一种格式的配置
(yml是主流)
1 Bean管理
1.1 从 IOC 容器中获取 Bean
1.2 Bean 作品域
可以通过注解 @Scope("prototype") 配置作用域
1.3 第三方 Bean
在启动类中(不建议),
这样,
2 Springboot 原理
Springboot 提供两个重要功能:
- 起步依赖
- 自动配置
2.1 起步依赖
springboot 只需要启动一个依赖,依靠 Maven 的 依赖传递,可以包括很多其他依赖
2.2 自动配置
当 spring 容器启动后,一些配置类、bean 对象就自动存入到了 IOC 容器中,不需要我们手动去声明,从而简化了开发,省去了繁琐的配置操作、
2.2.1 自动配置原理
或 springboot 原理
引入依赖,对应的 jar 包是如何将配置类、bean 对象加载到 Spring IOC容器中的
在 pom.xml 文件里面引入第三方依赖
但是启动类无法扫描到第三方的类
方案一:扩大扫描范围
但是太繁琐,不使用这种方案
也不行
最终方案
在启动类直接加上这个注解
2.3 自动配置源码(待添加)
3 总结
Web后端开发:三层架构
前端 -Controller层-Service层-Dao层-MySL
Controller层(控制器层)负责接收请求,相应数据
Service层(业务层)负责业务的逻辑处理
Dao(数据访问层,持久层)处理数据访问,完成数据的增删改查操作
前端发来求,到 Controller 层,不处理逻辑,直接调用Service层,Service再调用Dao层完成数据访问操作
如果在执行具体的业务处理之前,需要完成一些通用的业务处理,比如统一的登录校验、统一的字符编码等,需要在Controller层前使用JavaWeb三大组件之一的Filter过滤器或Spring的Interceptor拦截器
为了实现三层架构层与层之间的解耦,Spring 第一大核心IOC控制反转与DI依赖注入
IOC:将对象创建的控制权由应用程序自身交给外部容器,即IOC容器(或Spring容器),声明为容器中的Bean对象
DI:容器为程序提供运行时需要的资源
AOP
事务管理
全局异常处理器
传统会话技术Cookie、Session
新的会话跟踪技术JWT
阿里云OSS对象存储服务
Mybatis持久层框架,操作数据库
SSM(SpringMVC,Spring framework,Mybatis)繁琐
现在使用SpringBoot进行开发
4 Maven 高级(待添加)
4.1 分模块设计
抽取完,需要在主文件夹里面pom引入被抽取出去的依赖
4.2 继承与聚合
继承描述的是两个工程间的关系,与 java 中的继承相似,子工程可以继承父工程中的配置信息,常见于依赖关系的继承
重复引入了一个依赖
继续抽取
实现
<parent>...</parent>