https://share.mubu.com/doc/38MeC8y07WC

一 : spring简介

(一) 概述

  1. Spring是一个轻量级的解决方案, 可以一站式的构建企业级应用
  2. Spring是模块级的, 允许你使用那些你需要的, 丢弃你所不需要的
  3. 你可以使用IOC容器, 同时可以在UI层使用任意的web框架, 同时可以使用任意的DAO层框架
  4. Spring支持声明式事务管理, 提供了远程访问计数, 持久化数据的多种操作
  5. Spring提供了一个充满特色的mvc框架(springmvc)
  6. Spring可以在软件中使用aop(面向切面编程)
    (二) 名词解释
    轻量级和重量级 : 系统对于环境的依赖程度
    一站式 : 类比小米之家(生态圈)
    声明式 : 显示的标注需要声明的地方
    (三) 体系结构
    IOC,bean,依赖注入,spring-jdbc
    Spring-jdbc : spring对jdbc 的支持
    Spring-orm : spring对orm的支持
    Spring-oxm : spring对oxm的支持
    Spring-tx : spring对事务的支持
    Spring-web : spring对web的支持
    Spring-aop : spring对aop的支持
    Spring-aspects : spring对切面的支持
    Spring-test : spring对单元测试的支持

Spring-core : spring的核心类库
Spring-beans : spring对于bean的管理
Spring-context : spring的上下文(周边)
Spring-expression : spring对于表达式的支持

二 : IOC

(一) 简介
IOC : inversion of control, 控制反转
DI : dependency injection, 依赖注入

  1. IOC也被称为是DI, 这是一个定义配合一起工作的依赖对象的进程
  2. 通过构造器参数, 工厂方法参数, 对象实例化后设置属性来实现
  3. IOC容器在创建对象的时候注入依赖
  4. 这个过程是反向的, 一次被称为控制反转
    总结: IOC是控制反转, 简单来说, 就是将创建对象的权利交给spring, 达到充分的解耦合的目的
    Person person = new Person();

(二) 入门案例

  1. 添加依赖
    IOC,bean,依赖注入,spring-jdbc
  2. 编写目标类
    IOC,bean,依赖注入,spring-jdbc
  3. 编写配置文件applicationContext.xml, 托管person
    IOC,bean,依赖注入,spring-jdbc
  4. 从容器中获取对象
    IOC,bean,依赖注入,spring-jdbc
    (三) 实现原理
    IOC,bean,依赖注入,spring-jdbc
    (四) 核心API
    BeanFactory : spring的心脏, 供框架内部调用, 需要的时候才去实例化
    ApplicationContext : spring的躯体, 供使用者调用, 容器启动直接实例化

三 : bean

(一) 实例化

  1. 无参构造器
    IOC,bean,依赖注入,spring-jdbc
  2. 静态工厂
    IOC,bean,依赖注入,spring-jdbc
    IOC,bean,依赖注入,spring-jdbc
  3. 实例化工厂
    IOC,bean,依赖注入,spring-jdbc
    IOC,bean,依赖注入,spring-jdbc
    (二) 生命周期和作用范围
    singleton : 默认值, 每个spring容器中只有一个对应的实例, 单例模式
    Prototype : 每次获取的是不同的实例, 多例模式
    request : bean的生命周期和request保持一致
    session : bean的生命周期和session保持一致
    application : bean的生命周期和ServletContext保持一致
    websocket : bean的生命周期和WebSocket保持一致

Websocket是对tcp的封装

Udp : 广播, 效率, 效率高
Tcp : 录播, 相对安全, 有回应, 效率相对较差

(三) 两个特殊方法
IOC,bean,依赖注入,spring-jdbc
IOC,bean,依赖注入,spring-jdbc

四 : 依赖注入

DI : dependency injection, 依赖注入

(一) IOC和DI的区别与联系
IOC,bean,依赖注入,spring-jdbc
站在person的角度car是属性, car的注入就是DI
站在car的角度, car的创建是IOC

(二) 注入方式

  1. 构造器注入
    IOC,bean,依赖注入,spring-jdbc
    IOC,bean,依赖注入,spring-jdbc
  2. Set注入
    IOC,bean,依赖注入,spring-jdbc
    IOC,bean,依赖注入,spring-jdbc
  3. Array注入
    IOC,bean,依赖注入,spring-jdbc
    IOC,bean,依赖注入,spring-jdbc
  4. List注入
    IOC,bean,依赖注入,spring-jdbc
    IOC,bean,依赖注入,spring-jdbc
  5. Set注入
    IOC,bean,依赖注入,spring-jdbc
    IOC,bean,依赖注入,spring-jdbc
  6. Map注入
    IOC,bean,依赖注入,spring-jdbc
    IOC,bean,依赖注入,spring-jdbc
  7. Properties注入
    IOC,bean,依赖注入,spring-jdbc
    IOC,bean,依赖注入,spring-jdbc
  8. 对象属性的注入
    IOC,bean,依赖注入,spring-jdbc
    IOC,bean,依赖注入,spring-jdbc

五 : 配置文件模块化

(一) 一次加载多个配置文件
IOC,bean,依赖注入,spring-jdbc
(二) 主配置文件加载从配置文件
IOC,bean,依赖注入,spring-jdbc
IOC,bean,依赖注入,spring-jdbc
(三) 注意事项

  1. 同一个xml配置文件中不允许出现id相同的
  2. 不同xml配置文件中有id相同的, 会发生覆盖

的id不允许相同

六 : spring-jdbc

(一) Who does what IOC,bean,依赖注入,spring-jdbc
(二) 入门案例

  1. 添加依赖
    IOC,bean,依赖注入,spring-jdbc
  2. 编写实体类
    IOC,bean,依赖注入,spring-jdbc
  3. 编写dao
    IOC,bean,依赖注入,spring-jdbc
  4. 编写配置文件
    IOC,bean,依赖注入,spring-jdbc
  5. 增删改查
    IOC,bean,依赖注入,spring-jdbc

相关文章:

  • 2021-08-25
  • 2021-07-09
  • 2021-12-26
  • 2022-01-01
  • 2021-09-23
  • 2021-12-12
  • 2021-12-15
猜你喜欢
  • 2021-05-13
  • 2022-12-23
  • 2021-05-12
  • 2021-08-23
  • 2021-12-16
  • 2021-06-08
  • 2022-01-03
相关资源
相似解决方案