`
aa8945163
  • 浏览: 276206 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

spring 理解

阅读更多
今天有一哥们去面试 ,哥们说自己会ssh
面试官就问了几个spring的概念性的问题 ,哥们平时只专注于写代码,回来后一脸的无奈

本人总结了一些ssh常见的面试题 例举如下
强调在回答的时候不要光回答概念,要思维扩散性的讲些相关的东西

spring 的优点?
1.降低了组件之间的耦合性 ,实现了软件各层之间的解耦
2.可以使用容易提供的众多服务,如事务管理,消息服务等
3.容器提供单例模式支持
4.容器提供了AOP技术,利用它很容易实现如权限拦截,运行期监控等功能
5.容器提供了众多的辅助类,能加快应用的开发
6.spring对于主流的应用框架提供了集成支持,如hibernate,JPA,Struts等
7.spring属于低侵入式设计,代码的污染极低
8.独立于各种应用服务器
9.spring的DI机制降低了业务对象替换的复杂性
10.Spring的高度开放性,并不强制应用完全依赖于Spring,开发者可以自由选择spring的部分或全部

什么是DI机制?
依赖注入(Dependecy Injection)和控制反转(Inversion of Control)是同一个概念,具体的讲:当某个角色
需要另外一个角色协助的时候,在传统的程序设计过程中,通常由调用者来创建被调用者的实例。但在spring中
创建被调用者的工作不再由调用者来完成,因此称为控制反转。创建被调用者的工作由spring来完成,然后注入调用者
因此也称为依赖注入。
spring以动态灵活的方式来管理对象 , 注入的两种方式,设置注入和构造注入。
设置注入的优点:直观,自然
构造注入的优点:可以在构造器中决定依赖关系的顺序。

什么是AOP?
面向切面编程(AOP)完善spring的依赖注入(DI),面向切面编程在spring中主要表现为两个方面
1.面向切面编程提供声明式事务管理
2.spring支持用户自定义的切面

面向切面编程(aop)是对面向对象编程(oop)的补充,
面向对象编程将程序分解成各个层次的对象,面向切面编程将程序运行过程分解成各个切面。
AOP从程序运行角度考虑程序的结构,提取业务处理过程的切面,oop是静态的抽象,aop是动态的抽象,
是对应用执行过程中的步骤进行抽象,,从而获得步骤之间的逻辑划分。

aop框架具有的两个特征:
1.各个步骤之间的良好隔离性
2.源代码无关性
分享到:
评论

相关推荐

    spring_hibernate_struts2的理解

    这是对spring_hibernate_struts2的理解,可以在面试中简要的抓住重点进行陈述。

    方志朋版——深入理解Spring Cloud与微服务构建.pdf

    《深入理解Spring Cloud与微服务构建》是针对Java开发者,特别是对微服务架构感兴趣的开发者的一本重要参考资料。Spring Cloud作为目前最流行的微服务框架之一,它提供了构建分布式系统所需的多种工具和服务,包括...

    一步步深入理解Spring内部原理-带源码

    为了深入理解Spring的内部原理,我们可以从以下几个关键知识点入手。 1. **依赖注入(Dependency Injection, DI)**:这是Spring的核心特性之一,允许对象之间的依赖关系在运行时被外部容器管理,而不是由对象自身...

    《深入理解SpringCloud与微服务构建》_sample.pdf

    《深入理解SpringCloud与微服务构建》_sample.pdf 《深入理解SpringCloud与微服务构建》_sample.pdf 《深入理解SpringCloud与微服务构建》_sample.pdf 《深入理解SpringCloud与微服务构建》_sample.pdf

    spring培训的例子

    标题 "spring培训的例子" 暗示我们将探讨Spring框架的相关应用和实践,这可能是针对初学者或希望深化Spring理解的开发者的教程。Spring是Java生态系统中的一个核心框架,主要用于企业级应用开发,它提供了依赖注入、...

    深入理解spring cloud与微服务构建 pdf高清完整版

    深入理解spring cloud与微服务构建 pdf高清完整版下载 带目录

    Spring 揭秘 全面 深入了解Spring

    《Spring 揭秘:全面深入了解Spring》是一本旨在帮助开发者深入理解并熟练掌握Spring框架的权威指南。Spring是Java企业级应用开发中的基石,它以其模块化、易用性和强大的功能深受开发者喜爱。这本书详细阐述了...

    Spring全家桶面试题—图灵徐庶1

    1. **Spring理解**: Spring是一个开源框架,旨在简化企业级应用的开发。它通过提供DI和AOP功能,使得代码更加模块化和松耦合,从而提高了可测试性和可维护性。 2. **Spring优点**: - 简化对象的创建和管理,...

    Spring容器的通俗理解及简单写法

    通过理解并掌握Spring容器的工作原理,开发者可以更有效地利用Spring框架,提高代码的可测试性、可维护性和可扩展性。在实践中,Spring的IoC容器可以帮助我们编写出更加灵活和模块化的代码,从而提升整个应用的质量...

    《深入理解Spring Cloud与微服务构建》word版本

    《深入理解Spring Cloud与微服务构建》是一本专注于讲解如何使用Spring Cloud构建高效、可靠的微服务系统的书籍。Spring Cloud作为目前最流行的微服务框架之一,它提供了大量的工具和服务,帮助开发者快速搭建分布式...

    《深入理解Spring Cloud与微服务构建》学习笔记(八)

    在深入探讨Spring Boot、Spring Cloud和Eureka的集成应用之前,我们先来理解这些关键概念。Spring Boot是一款用于简化Spring应用程序开发的框架,它通过自动配置、起步依赖和内嵌服务器等功能,使得开发者能够快速...

    深入理解Spring Cloud与微服务构建

    Spring Cloud作为Java语言的微服务落地框架,在Spring开源社区和Pivatol、Netflix两大公司的推动下飞速发展,得到了众多开发者的认可,Spring Cloud在未来很可能成为微服务框架的领导者和规范。

    Spring Cloub 入门理解

    标题 "Spring Cloub 入门理解" 指向了学习和理解 Spring Cloud 的基础知识,这对于构建可扩展和容错的微服务架构至关重要。Spring Cloud 的核心组件包括: 1. **Spring Cloud Config**: 这是配置管理工具,允许你...

    Spring Boot整合Spring Batch,实现批处理

    通过查看这些文件,你可以学习如何将批处理逻辑集成到Spring Boot应用中,并理解如何配置和运行批处理作业。 总的来说,Spring Boot与Spring Batch的结合为开发批处理应用提供了一种强大而灵活的解决方案。通过学习...

    Spring Cloud实战 _springcloud实战_springcloud_

    首先,我们要理解Spring Cloud的核心组件。Eureka是Spring Cloud中的服务注册与发现组件,它允许各个服务实例向注册中心注册,并通过注册中心获取其他服务的位置信息,实现服务间的相互调用。Zuul和 Ribbon则是实现...

    spring2.0升级到spring3.0.5的开发包

    Spring框架是Java应用程序开发中的一个核心组件,它提供了一个丰富的IOC(Inversion of Control,控制反转)和AOP(Aspect...对于开发者来说,理解这些变化和新特性是至关重要的,以便充分利用Spring 3.0.5带来的优势。

    Spring中文文档下载

    这个压缩包包含Spring的多个中文版本的文档,可以帮助开发者深入理解Spring的功能和使用方法。 `Spring3.0中文版.chm`提供了Spring框架3.0版本的中文手册。3.0版本是Spring的一个重要里程碑,引入了基于注解的配置...

    个人理解Spring的工作流程

    整理了一下spring的加载, 个人对于Spring的流程的理解,望多多指正

    Spring Framework 6 中文文档

    "Spring"的理解不仅仅是框架本身,它代表了一个完整的生态系统,包括Spring Boot、Spring Cloud等。Spring的历史可以从其诞生背景和演进过程来理解,它从一个轻量级的IoC容器发展成为现代企业级应用开发的基石。设计...

Global site tag (gtag.js) - Google Analytics