`
zzzwp
  • 浏览: 20665 次
社区版块
存档分类
最新评论

Spring面试题

 
阅读更多
目录
一、Spring工作原理
二、为什么要用Spring
三、请你谈谈SSH整合
四、介绍一下Spring的事务管理
五、什么是依赖注入,依赖注入的作用是什么?
六、什么是AOP,AOP的作用是什么?
七、Spring中的BeanFactory与ApplicationContext的作用有哪些?
八、连接池
九、跨库事务


一、Spring MVC工作原理
1. 客户端请求提交到DispatcherServlet
2. 由DispatcherServlet控制器查询一个或多个HandlerMapping,找到处理请求的Controller
3. DispatcherServlet将请求提交到Controller
4. Controller调用业务逻辑处理后,返回ModelAndView
5. DispatcherServlet查询一个或多个ViewResoler视图解析器,找到ModelAndView指定的视图
6. 视图负责将结果显示到客户端


二、为什么要用Spring
1、Spring能很好的与各大框架进行集成
2、创建对象时,如果我们不用spring需要用工厂模式来创建,这个spring相当于工厂模式已经帮我们做了创建对象的功能(IOC、依赖注入)。
3、在用Hibernate的时候,如果不用spring每次都要写事务的提交代码,有了spring可以通过AOP帮助我们管理事务
4、面向切面编程(AOP)在要记录日志的时候添加一条记录后需要在数据里同时添加一条添加成功了或失败的记录,那么就可以用Spring的Aop来处理,虽然不用Aop也能做但是不用Spring的Aop就会写很多重复的代码。

三、请你谈谈SSH整合
SSH:Struts(表示层)+Hibernate(持久层)+Spring(业务层)

a、Struts
Struts是一个表示层框架,主要作用是界面展示,接收请求,分发请求。
b、Hibernate
Hibernate是一个持久层框架,它只负责与关系数据库的操作。
c、Spring
Spring是一个业务层框架,是一个整合的框架,能够很好地黏合表示层与持久层。

四、介绍一下Spring的事务管理
事务就是对一系列的数据库操作(比如插入多条数据)进行统一的提交或回滚操作,如果插入成功,那么一起成功,如果中间有一条出现异常,那么回滚之前的所有操作。这样可以防止出现脏数据,防止数据库数据出现问题。

开发中为了避免这种情况一般都会进行事务管理。Spring中也有自己的事务管理机制,一般是使用TransactionMananger进行管理,可以通过Spring的注入来完成此功能。

五、什么是依赖注入,依赖注入的作用是什么?
IOC是一种思想,它能指导我们如何设计出松耦合、更优良的程序。传统应用程序都是由我们在类内部主动创建依赖对象,从而导致类与类之间高耦合,难于测试;有了IOC容器后,把创建和查找依赖对象的控制权交给了容器,由容器进行注入组合对象,所以对象与对象之间是松散耦合,这样也方便测试,利于功能复用,更重要的是使得程序的整个体系结构变得非常灵活。

依赖注入的作用:减少类间耦合度,避免用new来创建对象

六、什么是AOP,AOP的作用是什么?
AOP,面向切面编程,就是把可重用的功能提取出来,然后将这些通用功能在合适的时候织入到应用程序中,比如事务管理、权限控制、日志记录、性能统计等。

AOP的作用
AOP并没有帮助我们解决任何新的问题,它只是提供了一种更好的办法,能够用更少的工作量来解决现有的一些问题,使得系统更加健壮,可维护性更好。

七、Spring中的BeanFactory与ApplicationContext的作用有哪些?
1、BeanFactory负责读取bean的配置文件,管理bean的加载、实例化,维护bean之间的依赖关系,负责bean的生命周期。
2、ApplicationContext除了提供上述BeanFactory所能提供的功能之外,还提供了更完整的框架功能:
a. 国际化支持
b. 资源访问
c. 事件传递

八、连接池
c3p0、dbcp

九、跨库事务
Atomikos、jotm

载至http://www.cnblogs.com/linjiqin/p/3573151.html
分享到:
评论

相关推荐

    Spring面试题总结.pdf

    标题为"Spring面试题总结"的文档是一份专门针对程序员在应聘与Spring相关职位时可能会遇到的技术面试题的整理和总结。Spring作为一个企业级Java应用框架,已经成为业界使用最为广泛的框架之一,对于期望从事Java后端...

    spring面试题

    spring面试题总结,spring面试题总结,spring面试题总结,spring面试题总结

    spring 面试题集锦

    spring 面试题集锦spring 面试题集锦spring 面试题集锦spring 面试题集锦spring 面试题集锦spring 面试题集锦

    Spring面试题(含答案).pdf

    Spring面试题(含答案) Spring 是一个 Java 企业级应用的开源开发框架,主要用来开发 Java 应用,但是有些扩展是针对构建 J2EE 平台的 web 应用。Spring 框架目标是简化 Java 企业级应用开发,并通过 POJO 为基础...

    Spring面试题(2024最新版)-重点.docx

    Spring面试题(2024最新版)-重点.docx

    后端+spring面试题+面试用

    spring面试题 博主是一名工作多年的老Java开发,这份Spring面试题送给你,希望对你有所帮助 小伙伴们还可以免费看下本博主整理的Spring专栏 https://blog.csdn.net/u014534808/category_7677806.html 学习的路上我们...

    Spring面试题与答案.doc

    阿里Spring面试题与答案

    spring面试题大全

    面试中,Spring的相关问题经常出现,下面将详细解答这些常见面试题。 首先,Spring的优点包括: 1. 分层架构:Spring允许开发者选择需要的模块,避免了不必要的复杂性。 2. POJO(Plain Old Java Object)编程:它...

    spring面试题宝典

    《Spring面试题宝典》是针对Java开发者,尤其是对Spring框架有一定掌握的程序员们准备的一份面试指南。Spring作为企业级应用开发中的重要组件,其深入理解和熟练运用是面试过程中的常见考察点。本宝典将围绕Spring的...

    spring面试题.doc

    Spring 框架是Java开发中的一...以上内容涵盖了Spring的核心概念、AOP、DI、集成其他框架以及事务管理等方面,这些都是Spring面试中常见的知识点。理解和熟练运用这些内容,将有助于提升在Spring开发和面试中的竞争力。

    Spring面试题【面试题大整合】(含答案)

    Spring面试题【面试题大整合】(含答案) Java Spring后端面试题整理, 包含依赖注入,SpringMVC,SpringBoot等等问题, 用简洁明了的语言,通俗易懂地阐述了Java相关的知识点。 适用人群:适合想了解或学习Spring的...

    Spring面试题和答案(70道,史上最全).pdf

    标题中提到的“Spring面试题和答案(70道,史上最全).pdf”暗示了文档包含了大量与Spring框架相关的面试问题及其答案。Spring是一个非常流行的Java企业级应用开发框架,它提供了全面的编程和配置模型,使得开发者...

    Spring面试题合集

    Spring面试题合集涵盖了Spring框架的核心概念、重要特性以及常见的面试问题。以下是对这些知识点的详细阐述: 1. **IoC(控制反转)与DI(依赖注入)**: - IoC是指应用程序的控制权由传统模式中的对象自己控制...

    高级开发spring面试题和答案.pdf

    在Spring框架中,面试常涉及的关键知识点包括Spring的IoC(控制反转)、依赖注入、Bean的生命周期、AOP(面向切面...以上知识点都是Spring面试中可能涉及的核心内容,理解和掌握这些将有助于应对高级开发岗位的面试。

    【BAT必备】spring面试题,spring MVC面试题,spring boot面试题,spring cloud面试题

    ### Spring框架核心概念 #### 1. Spring框架简介 Spring框架是一个开源的Java平台,用于构建企业级应用程序。它提供了一种简洁的方式来管理组件、事务处理、数据访问以及与各种第三方库集成。Spring的核心功能包括...

    Java Spring面试题.zip

    本资料“Java Spring面试题.zip”包含了针对Spring框架的面试题,旨在帮助求职者评估自己对Spring的理解程度和实战能力。下面我们将深入探讨Spring框架的核心概念、关键特性以及常见面试题的相关知识点。 1. **...

    Spring面试题详细讲解

    Spring面试题详细讲解 Spring 是什么? Spring 是一个轻量级的 IoC 和 AOP 容器框架。是为 Java 应用程序提供基础性服务的框架,目的是简化应用程序的开发主要由以下几个模块组成:Spring Core:核心类库,提供 ...

Global site tag (gtag.js) - Google Analytics