当前位置: 首页 > news >正文

有关Spring的总结

一、概念:

        用于 解决各数据层之间耦合性过高(代码重复问题,),例如在创建对象,每个方法都可能会被实例化,会造成大量的代码重复,引入了Spring框架去解决这个问题,创建对象将由一个类似工厂集体创建,其他数据层只要负责各自的代码实现就行,同时工厂会将对象封装称为bean对象。

二、核心思想

  • 三种核心思想

    • loc思想(控制反转)

      • 将创建对象的权利交给第三方容器即(factory)而不是由对象自己完成。

    • DI(依赖注入)

      • 通过注入的方式实现对象的创建,这是一种对象的创建方式

    • AOP思想(面向切面

      • 是一种编程范式,旨在通过将横切关注点从业务逻辑中分离出来,以提高代码的模块化程度和可维护性。

三、创建步骤 

  • 创建步骤

    • 第一步导入Springjar包

    • 第二步创建配置bean对象的xml文件

    • 第三步编写代码用于测试从Spring容器拿对象的操作

四、 Spring实例化对象的基本流程

 

  • Spring实例化对象的基本流程

    1. 解析bean.xml

    2. 封装成beanDefinition

    3. 存放到BeanDefinitionMap

    4. 遍历得到bean

    5. 存放到sigtonObjects对象

    6. GetBean方法得到bean

五、两种容器(SpringBean和IOC容器)的区别

  • 两种容器(SpringBean和IOC容器)的区别

    • 创建方式

      • IOC容器的创建方式

      • BeanFacory的创建方式

    • 区别

      • 配置文件的加载顺序

        • BeanFacory则是在调用XmlBeanDefinitionReader的loadBeanDefinitions方法加载配置文件,同时通过在对象创建(即getbean方法调用的时候)的时候才会将文件中的存储的对象封装成一个个Bean对象。

    • Spring实例化对象的过程

      • 步骤解析,通过将Bean.xml读取里面解析封装成一个个BeanDifinition对象存放到以key value键值对的形式存入BeanDifinitionMap里面。通过遍历得到一个个Bean对象存放到singletonObjects。最后调用getBean方法得到对象。

六、我们使用spring框架说明IOC特性的步骤 

  • 我们使用spring框架说明IOC特性的步骤

    • .创建Maven项.目

    • .导入spring-context包

    • 配置spring.xml bean标签 id唯一标识 class配置类的路径

    • 创建class类,在里面写个属性和方法

    • 创建容器对象 用该对象获取bean对象

http://www.dtcms.com/a/291033.html

相关文章:

  • 解决 Ant Design v5.26.5 与 React 19.0.0 的兼容性问题
  • CMake与catkin_make的find_package()命令使用说明
  • 《使用Qt Quick从零构建AI螺丝瑕疵检测系统》——1. 启航:你的第一个工业视觉应用
  • C/C++ 详谈结构体大小计算(内存对齐)
  • 基于 HAProxy 搭建 EMQ X 集群
  • vscode创建vue项目报错
  • 如何判断自己的电脑或主机是否支持DDR5内存?
  • Android 默认图库播放视频没有自动循环功能,如何添加2
  • MVC模式
  • vcruntime140_1.dll文件丢失?终极修复指南:从错误分析到修复全流程
  • Ubuntu 22.04 使用 Docker 安装 Redis 5 (安装包形式)
  • linux定时器使用
  • AD域控制器虚拟化的安全加固最佳实践
  • 从IR到DS的转化过程中,如何确保各阶段需求不偏离用户原始场景?有哪些验证方法?
  • 吴恩达 机器学习cs229-学习笔记-更新中
  • 动静态库原理与实战详解
  • Linux 721 创建实现镜像的逻辑卷
  • 网站域名备案和服务器有关系吗
  • 《电⼦元器件零基础⼊⻔》
  • 汽车售后诊断仪DoIP和CANBus诊断指令分析
  • Linux的磁盘存储管理实操——(中)——逻辑卷管理实战
  • Ubuntu 22.04编译安装Nginx 1.28
  • Docker实践:使用Docker部署blog轻量级博客系统
  • 我的NAS进化史:用1Panel和内网穿透把零配件变成远程中枢
  • 超详细解析:Java装箱与拆箱(附完整数据类型清单)
  • 在 HTTP GET 请求中传递参数有两种标准方式
  • 【Java】Spring的依赖注入理解,@Autowired用法
  • 网络数据分层封装与解封过程的详细说明
  • STM32 开发的鼠标:技术详解与实现指南
  • RBAC(Role-Based Access Control,基于角色的访问控制)介绍(一种通过角色来管理用户权限的访问控制模型)