Spring面试题详细讲解 Spring 是什么? Spring 是一个轻量级的 IoC 和 AOP 容器框架。是为 Java 应用程序提供基础性服务的框架,目的是简化应用程序的开发主要由以下几个模块组成:Spring Core:核心类库,提供 IOC 服务;Spring Context:提供框架式的 Bean 访问方式,以及企业级功能(JNDI、定时任务等);Spring AOP:AOP 服务;Spring DAO:对 JDBC 的抽象,简化了数据访问异常的处理;Spring ORM:对现有的 ORM 框架的支持;Spring Web:提供了基本的面向 Web 的综合特性,例如多方文件上传;Spring MVC:提供面向 Web 应用的 Model-View-Controller 实现。 Spring 的优点有哪些? (1)spring 属于低侵入式设计,代码的污染极低; (2)spring 的 DI 机制将对象之间的依赖关系交由框架处理,减低组件的耦合性; (3)Spring 提供了 AOP 技术,支持将一些通用任务进行集中式管理,从而提供更好的复用。 (4)spring 对于主流的应用框架提供了集成支持。 Spring 中的设计模式有哪些? Spring 中常用的设计模式达到九种,我们举例说明: 工厂模式(Factory Method)通常由应用程序直接使用 new 创建新的对象,为了将对象的创建和使用相分离,采用工厂模式,即应用程序将对象的创建及初始化职责交给工厂对象。一般情况下,应用程序有自己的工厂对象来创建 bean。如果将应用程序自己的工厂对象交给 Spring 管理,那么 Spring 管理的就不是普通的 bean,而是工厂 Bean。 单例模式(Singleton)保证一个类仅有一个实例,并提供一个访问它的全局访问点。spring 中的单例模式完成了后半句话,即提供了全局的访问点 BeanFactory。但没有从构造器级别去控制单例,这是因为 spring 管理的是是任意的 java 对象。 适配器模式(Adapter)在 Spring 的 Aop 中,使用的通知来增强被代理类的功能。Spring 实现这一 AOP 功能的原理就使用代理模式对类进行方法级别的切面增强,代理模式(Proxy)为其他对象提供一种代理以控制对这个对象的访问。从结构上来看和 Decorator 模式类似,但 Proxy 是控制,更像是一种对功能的限制,而 Decorator 是增加职责。spring 的 Proxy 模式 在 aop 中 有 体 现 , 比 如 JdkDynamicAopProxy 和Cglib2AopProxy。 观察者模式(Observer)定义对象间的一种一对多的依赖关系,当一个对象的状态发生改变时,所有依赖于它的对象都得到通知并被自动更新。spring中Observer模式常用的地方是listener的实现,如ApplicationListener。 阐述 Spring 框架中 Bean 的生命周期? ① Spring IoC 容器找到关于 Bean 的定义并实例化该 Bean。 ② Spring IoC 容器对 Bean 进行依赖注入。 ③ 方法被调用。 ⑧ 当销毁 Bean 实例时,如果 Bean 实现了 DisposableBean 接口,则调用其 destroy 方法。 Spring IOC 容器中 Bean 范围(scope)有几个? singleton prototype 多例即原型 Request 和 http 请求关联 Session 会话 application 应用程序 Spring 中的自动装配有哪些限制? 如果使用了构造器注入或者 setter 注入,那么将覆盖自动装配的依赖关系。 基本数据类型的值、字符串字面量、类字面量无法使用自动装配来注入。 优先考虑使用显式的装配来进行更精确的依赖注入而不是使用自动装配。 Spring 中自动装配的方式有哪些? no:不进行自动装配,手动设置 Bean 的依赖关系。 byName:根据 Bean 的名字进行自动装配。 byType:根据 Bean 的类型进行自动装配。 constructor:类似于 byType,不过是应用于构造器的参数,如果正好有一个 Bean 与构造器的参数类型相同则可以自动装配,否则会导致错误。 autodetect:如果有默认的构造器,则通过 constructor 的方式进行自动装配,否则使用 byType 的方式进行自动装配。 描述 Spring 事务的只读、超时、回滚的原则。 1. Spring 事务的只读“只读事务”并不是一‘’个强制选项,它只是一个“暗示”,提示数据库驱动程序和数据库系统,这个事务并不包含更改数据的操作
- 粉丝: 0
- 资源: 12
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- 微电网(两台)主从控制孤岛-并网平滑切的分析 分析了: 1.孤岛下VF控制 2.并网下PQ控制 3.孤岛下主从控制 4.孤岛到并网的平滑切控制 5.除模型外还对分布式发电与主动配电网一些常见问题做了
- 第四组二手产品.zip
- MVIMG_20241222_194113.jpg
- 基于小程序的在线疫苗预约小程序源代码(java+小程序+mysql+LW).zip
- 基于小程序的岳阳市美术馆预约平台源代码(java+小程序+mysql+LW).zip
- 基于小程序的音乐播放器小程序源代码(java+小程序+mysql+LW).zip
- 多功能知识付费源码下载实现流量互导多渠道变现+搭建教程
- 3. Kafka入门-安装与基本命令
- 基于小程序的养老院管理系统源代码(java+小程序+mysql+LW).zip
- 基于小程序的新冠抗原自测平台小程序源代码(java+小程序+mysql+LW).zip