Java面试题之Spring(一)

    1.谈谈你对Spring的理解

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

            是一个IOC和AOP容器框架

Spring 容器的主要核心是

        控制反转,传统的java开发模式中。当需要一个对象时,我们会自己使用new或者getInstance 等直接或间接调用构造方法创建一个对象

        而spring 开发模式中,spring容器使用了工厂模式为我们创建了所需要的对象,不需要我们自己创建,直接调用Spring 提供的对象就可以,这是控制反转的思想

依赖注入(DI):spring 使用javaBean 对象的set方法或者参数的构造方法为我们在创建所需对象时将其属性自动设置所需要的值的过程,就是依赖注入的思想。

    面向切面编程(AOP),在面向对象编程(oop)思想中,我们将事务纵向抽成一个个对象,而在面向切面编程中,我们将一个个的对象某些类似的方面横向抽成一个切面,对这个切面进行一些权限控制,事物管理,记录日志,等,共用操作处理的过程,就是面向切面编程思想,AOP底层是动态代理,如果是接口采用JDK动态代理,如果是累采用CGLIB方式实现动态代理

Spring 中的设计模式

        a.单例模式。-----------spring中两只代理方式,若目标对象实现了若干接口,Spring使用jdk的java.lang.reflect.Proxy类代理。若目标对象

没有实现任何接口,Spring使用CGLIB库生成目标类的子类

        单例模式-----------在Spring的配置文件中设置Bean 默认为单例模式。

        b.模板方式模式,----在Spring的配置文件中设置bean默认为单例模式

                    比如:ResTemplate  ,JmsTemplate,JPATemplate

        c:前端控制器模式-------spring 提供了前端控制器,DispathServlet来对请求进行分发

        d:视图帮助-----Spring 提供了一系列的JSP标签,高效宏来帮助将分散的代码整合在视图中

        e;依赖注入----贯穿与BeanFactory/ApplcationContext接口的核心理念

        g:工厂模式:在工厂模式中。我们创建对象时不会对客户端暴露创建逻辑,并且是通过使用同一个接口来指向新创建的对象 ,

            Spring中使用beanFactory 来创建对象的实例

            

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 136,302评论 19 139
  • 什么是Spring Spring是一个开源的Java EE开发框架。Spring框架的核心功能可以应用在任何Jav...
    jemmm阅读 16,733评论 1 133
  • IOC和DI是什么? Spring IOC 的理解,其初始化过程? BeanFactory 和 FactoryBe...
    justlpf阅读 8,853评论 1 21
  • 文/夏莲 习惯了一个人的流浪 纵使身边充斥着形形色色的人 也难以走进她的心灵深处 小时候童年的路很长 记忆的碎片早...
    周小锦阅读 2,498评论 0 6

友情链接更多精彩内容