Spring 是一个开源框架,为简化企业级应用开发而生
Spring可以实现java模块化开发,贯穿表现层,业务层,逻辑层,实现了各个层之间的解耦合关系
Spring 是一个 IOCAOP 容器框架
Spring 容器的核心

  1. 控制反转(IOC):传统的java 开发模式中,当需要一个对象时,我们会自己使用 new 或者 getInstance 等直接或者间接调用构造方法创建一个对象。
    而在spring 开发模式中,spring 容器使用了工厂模式为我们创建了所需要的对象,不需要我们自己创建了,直接调用spring 提供的对象就可以了,这是控制反转的思想
  2. 面向切面编程(AOP):在面向对象编程(oop)思想中,我们将事物纵向抽成一个个的对象。而在面向切面编程中,我们将一个个的对象某些类似的方面横向抽成一个切面,对这个切面进行一些如权限控制、事物管理,记录日志等公用操作处理的过程就是面向切面编程的思想。
    AOP 底层是动态代理,如果是接口采用JDK 动态代理,如果是类采用CGLIB 方式实现动态代理。AOP 底层是动态代理,如果是接口采用JDK 动态代理,如果是类采用CGLIB 方式实现动态代理。
  3. 依赖注入(DI):Spring 使用 JavaBean 对象的 set 方法或者带参数的构造方法为我们在创建所需对象时将其属性自动设置所需要的值的过程,就是依赖注入的思想

谈谈你对Spring的理解相关推荐

  1. 谈谈你对 Spring 的理解

    谈谈你对 Spring 的理解 Spring 是一个开源框架,为简化企业级应用开发而生. Spring 可以是使简单的 JavaBean 实现以前只有 EJB 才能实现的功能. Spring 是一个 ...

  2. 谈谈你对Spring的理解?

    认识 Spring 框架 Spring 框架是 Java 应用最广的框架,它的成功来源于理念,而不是技术本身,它的理念包括 IoC (Inversion of Control,控制反转) 和 AOP( ...

  3. 面试题谈谈你对spring的理解

    1.spring为什么出现. spring的出现是为了解耦,我们在学习java初期,相信很多小伙伴都使用的是JSP+Servlet+MySQL+JDBC技术,在操作dao层的时候,每次都需要实例化一次 ...

  4. 面试之谈谈你对Spring的理解

    1.Spring实现了工厂模式的工厂类,这个类名为BeanFactory(接口), 在程序中通常用他的子类ApplicationContext. Spring相当于一个大的工厂类,在其配置文件中通过& ...

  5. 谈谈我对Spring IOC的理解

    学习过Spring框架的人一定都会听过Spring的IoC(控制反转) .DI(依赖注入)这两个概念,对于初学Spring的人来说,总觉得IoC .DI这两个概念是模糊不清的,是很难理解的,今天和大家 ...

  6. 面试精讲之面试考点及大厂真题 - 分布式专栏 04 谈谈你对分布式的理解,为什么引入分布式?

    04谈谈你对分布式的理解,为什么引入分布式? 引言 刚刚毕业第一份工作,没接触过分布式微服务相关的知识,后来换工作才了解到这些,面试官看了我简历里写了分布式相关,就开始揪住这个问题问,虽然一知半解地说 ...

  7. 分布式 - 谈谈你对分布式的理解,为什么引入分布式?

    不啰嗦,我们直接开始! 划重点: 真正了解分布式系统的概念,日后工作中具有分布式系统设计思想. 能否在设计中对系统稳定性方面考虑周全. 能构建高 QPS 健壮的系统架构. 1.面试官:那谈谈你对分布式 ...

  8. 谈谈对APC的一点理解

    谈谈对APC的一点理解 异步过程调用(APCs) 是NT异步处理体系结构中的一个基础部分,理解了它,对于了解NT怎样操作和执行几个核心的系统操作很有帮助. 1) APCs允许用户程序和系统元件在一个进 ...

  9. Spring深入理解之ComponentScan___@ComponentScan 详解

    Spring深入理解之ComponentScan 一.概述 ComponentScan顾名思义包扫描,底层其实就可以通过递归算法+反射将其装载成bean来实现的,实在开发过程中,Spring已经帮我们 ...

最新文章

  1. 《大话数据结构》第9章 排序 9.9 快速排序(下)
  2. html5中加入音频,使用HTML5在网页中嵌入音频和视频播放的基本方法
  3. java 文件拷贝保留原来的属性,Java - 复制JPG,同时保留所有文件属性
  4. 物理搬砖问题_搬砖姿势:风法
  5. Selenium2 Python 自己主动化測试实战学习笔记(五)
  6. 关于 SAP 电商云 Spartacus UI 访问 b2b site 的权限问题
  7. AspectJ——AOP框架快速入门
  8. 设△ABC的内角A,B,C,所对的边分别为a,b,c,且acosB-bcosA=3/5c,则tan(A-B)的最大值为
  9. 进入51cto之后的发展方向
  10. MyEclipse 如何将 jar 包导入项目中
  11. Autorize插件的使用方法
  12. Hive map side join入门及测试
  13. 后台管理页面(bootdo)
  14. 计算机的装机配件,京东买的配件怎么装机自己组装教程
  15. 【可收藏】3W字,Docker 从入门到精通
  16. 尝试寻找免费思维导图软件的工作小结
  17. 无人驾驶能解决什么问题?
  18. 左(下)上三角、右上(下)三角输出、正(倒)三角,C语言
  19. 猴子也能入门的Markdown
  20. 最新opencv-c++安装及配置教程(VS2019 C++ opencv4.4.0)

热门文章

  1. ubuntn18.04安装imgaug
  2. Android—用最简单的案例Demo带你分析解读:Android观察者模式
  3. linux下用户和组的管理 磁盘限额,linux磁盘限额管理
  4. 兆比特每秒和兆字节每秒_网速中的“KB”“MB”“s”等字母都是啥意思,读啥,比如兆这样?...
  5. IDEA控制台乱码解决
  6. jquery的delegate实现原理
  7. 用Echarts绘制折线图-----堆积面积图和堆积折线图
  8. Ubuntu使用总结-持续更新
  9. [x,y-x,-y,..]
  10. mysql保留小数_mysql保留两位小数,保留整数