电子文档交易市场
安卓APP | ios版本
电子文档交易市场
安卓APP | ios版本

25个经典的Spring面试问答

31页
  • 卖家[上传人]:北***
  • 文档编号:89771639
  • 上传时间:2019-06-02
  • 文档格式:DOCX
  • 文档大小:79.06KB
  • / 31 举报 版权申诉 马上下载
  • 文本预览
  • 下载提示
  • 常见问题
    • 1、25个经典的Spring面试问答2015-05-01 分类:JAVA开发、编程开发、首页精华暂无人评论来源:ImportNew分享到:更多5欢迎分享开发问题到码农社区!将问题帖子私信程序员俱乐部,将有近60000人为您解答!本人收集了一些在大家在面试时被经常问及的关于Spring的主要问题,这些问题有可能在你下次面试时就会被问到。对于本文中未提及的Spring其他模块,我会单独分享面试的问题和答案。欢迎大家向我推荐你在面试过程中遇到关于Spring的问题。我会把大家推荐的问题添加到下面的Spring常用面试题清单中供大家参考。问题清单:1. 什么是Spring框架?Spring框架有哪些主要模块?2. 使用Spring框架有什么好处?3. 什么是控制反转(IOC)?什么是依赖注入?4. 请解释下Spring中的IOC?5. BeanFactory和ApplicationContext有什么区别?6. 将Spring配置到你的应用中共有几种方法?7. 什么基于XML的配置?8. 什么基Java的配置?9. 怎样用注解的方式配置Spring?10. 描述Spring Bean的生命周期?1

      2、1. 描述Spring中各种Bean的范围?12. 什么是Spring的嵌入beans?13. Spring框架中的单例bean是否是线程安全的?14. 请举例说明如何用Spring注入一个Java的集合类?15. 请举例说明如何在Spring的Bean中注入一个java.util.Properties?16. 请解释Spring的Bean的自动生成原理?17. 请辨析自动生成Bean之间模块的区别?18. 如何开启基于基于注解的自动写入?19. 请举例说明Required注解?20. 请举例说明Autowired注解?21. 请举例说明Qualifier注解?22. 请说明构造器注入和setter方法注入之间的区别?23. Spring框架中不同类型event有什么区别?24. FileSystemResource和ClassPathResource有何区别?25. 请列举Spring框架中用了哪些设计模式?1、什么是Spring框架?Spring框架有哪些主要模块?Spring框架是一个为Java应用程序的开发提供了综合、广泛的基础性支持的Java平台。Spring帮助开发者解决了

      3、开发中基础性的问题,使得开发人员可以专注于应用程序的开发。Spring框架本身亦是按照设计模式精心打造,这使得我们可以在开发环境中安心的集成Spring框架,不必担心Spring是如何在后台进行工作的。Spring框架至今已集成了20多个模块。这些模块主要被分如下图所示的核心容器、数据访问/集成,、Web、AOP(面向切面编程)、工具、消息和测试模块。更多信息:Spring 框架教程。2、使用Spring框架能带来哪些好处?下面列举了一些使用Spring框架带来的主要好处: Dependency Injection(DI)方法使得构造器和JavaBean properties文件中的依赖关系一目了然。 与EJB容器相比较,IoC容器更加趋向于轻量级。这样一来IoC容器在有限的内存和CPU资源的情况下进行应用程序的开发和发布就变得十分有利。 Spring并没有闭门造车,Spring利用了已有的技术比如ORM框架、logging框架、J2EE、Quartz和JDK Timer,以及其他视图技术。 Spring框架是按照模块的形式来组织的。由包和类的编号就可以看出其所属的模块,开发者仅仅需要

      4、选用他们需要的模块即可。 要测试一项用Spring开发的应用程序十分简单,因为测试相关的环境代码都已经囊括在框架中了。更加简单的是,利用JavaBean形式的POJO类,可以很方便的利用依赖注入来写入测试数据。 Spring的Web框架亦是一个精心设计的WebMVC框架,为开发者们在web框架的选择上提供了一个除了主流框架比如Struts、过度设计的、不流行web框架的以外的有力选项。 Spring提供了一个便捷的事务管理接口,适用于小型的本地事物处理(比如在单DB的环境下)和复杂的共同事物处理(比如利用JTA的复杂DB环境)。3、什么是控制反转(IOC)?什么是依赖注入?控制反转是应用于软件工程领域中的,在运行时被装配器对象来绑定耦合对象的一种编程技巧,对象之间耦合关系在编译时通常是未知的。在传统的编程方式中,业务逻辑的流程是由应用程序中的早已被设定好关联关系的对象来决定的。在使用控制反转的情况下,业务逻辑的流程是由对象关系图来决定的,该对象关系图由装配器负责实例化,这种实现方式还可以将对象之间的关联关系的定义抽象化。而绑定的过程是通过“依赖注入”实现的。控制反转是一种以给予应用程序

      5、中目标组件更多控制为目的设计范式,并在我们的实际工作中起到了有效的作用。依赖注入是在编译阶段尚未知所需的功能是来自哪个的类的情况下,将其他对象所依赖的功能对象实例化的模式。这就需要一种机制用来激活相应的组件以提供特定的功能,所以依赖注入是控制反转的基础。否则如果在组件不受框架控制的情况下,框架又怎么知道要创建哪个组件?在Java中依然注入有以下三种实现方式:1. 构造器注入2. Setter方法注入3. 接口注入4、请解释下Spring框架中的IoC?Spring中的org.springframework.beans包和org.springframework.context包构成了Spring框架IoC容器的基础。BeanFactory 接口提供了一个先进的配置机制,使得任何类型的对象的配置成为可能。ApplicationContex接口对BeanFactory(是一个子接口)进行了扩展,在BeanFactory的基础上添加了其他功能,比如与Spring的AOP更容易集成,也提供了处理message resource的机制(用于国际化)、事件传播以及应用层的特别配置,比如针对Web应用

      6、的WebApplicationContext。org.springframework.beans.factory.BeanFactory是Spring IoC容器的具体实现,用来包装和管理前面提到的各种bean。BeanFactory接口是Spring IoC 容器的核心接口。5、BeanFactory和ApplicationContext有什么区别?BeanFactory可以理解为含有bean集合的工厂类。BeanFactory包含了种bean的定义,以便在接收到客户端请求时将对应的bean实例化。BeanFactory还能在实例化对象的时生成协作类之间的关系。此举将bean自身与bean客户端的配置中解放出来。BeanFactory还包含了bean生命周期的控制,调用客户端的初始化方法(initialization methods)和销毁方法(destruction methods)。从表面上看,application context如同bean factory一样具有bean定义、bean关联关系的设置,根据请求分发bean的功能。但application context在此基础

      7、上还提供了其他的功能。1. 提供了支持国际化的文本消息2. 统一的资源文件读取方式3. 已在监听器中注册的bean的事件以下是三种较常见的ApplicationContext实现方式:1、ClassPathXmlApplicationContext:从classpath的XML配置文件中读取上下文,并生成上下文定义。应用程序上下文从程序环境变量中取得。ApplicationContext context = new ClassPathXmlApplicationContext(“bean.xml”);2、FileSystemXmlApplicationContext :由文件系统中的XML配置文件读取上下文。ApplicationContext context = new FileSystemXmlApplicationContext(“bean.xml”);3、XmlWebApplicationContext:由Web应用的XML文件读取上下文。6、Spring有几种配置方式?将Spring配置到应用开发中有以下三种方式:1. 基于XML的配置2. 基于注解的配置3. 基于Java的

      8、配置7、如何用基于XML配置的方式配置Spring?在Spring框架中,依赖和服务需要在专门的配置文件来实现,我常用的XML格式的配置文件。这些配置文件的格式通常用开头,然后一系列的bean定义和专门的应用配置选项组成。SpringXML配置的主要目的时候是使所有的Spring组件都可以用xml文件的形式来进行配置。这意味着不会出现其他的Spring配置类型(比如声明的方式或基于Java Class的配置方式)Spring的XML配置方式是使用被Spring命名空间的所支持的一系列的XML标签来实现的。Spring有以下主要的命名空间:context、beans、jdbc、tx、aop、mvc和aso。 下面这个web.xml仅仅配置了DispatcherServlet,这件最简单的配置便能满足应用程序配置运行时组件的需求。 Archetype Created Web Application spring org.springframework.web.servlet.DispatcherServlet 1 spring / 8、如何用基于Java配置的方式配置Spring?Spring对Java配置的支持是由Configuration注解和Bean注解来实现的。由Bean注解的方法将会实例化、配置和初始化一个新对象,这个对象将由Spring的IoC容器来管

      《25个经典的Spring面试问答》由会员北***分享,可在线阅读,更多相关《25个经典的Spring面试问答》请在金锄头文库上搜索。

      点击阅读更多内容
    最新标签
    发车时刻表 长途客运 入党志愿书填写模板精品 庆祝建党101周年多体裁诗歌朗诵素材汇编10篇唯一微庆祝 智能家居系统本科论文 心得感悟 雁楠中学 20230513224122 2022 公安主题党日 部编版四年级第三单元综合性学习课件 机关事务中心2022年全面依法治区工作总结及来年工作安排 入党积极分子自我推荐 世界水日ppt 关于构建更高水平的全民健身公共服务体系的意见 空气单元分析 哈里德课件 2022年乡村振兴驻村工作计划 空气教材分析 五年级下册科学教材分析 退役军人事务局季度工作总结 集装箱房合同 2021年财务报表 2022年继续教育公需课 2022年公需课 2022年日历每月一张 名词性从句在写作中的应用 局域网技术与局域网组建 施工网格 薪资体系 运维实施方案 硫酸安全技术 柔韧训练 既有居住建筑节能改造技术规程 建筑工地疫情防控 大型工程技术风险 磷酸二氢钾 2022年小学三年级语文下册教学总结例文 少儿美术-小花 2022年环保倡议书模板六篇 2022年监理辞职报告精选 2022年畅想未来记叙文精品 企业信息化建设与管理课程实验指导书范本 草房子读后感-第1篇 小数乘整数教学PPT课件人教版五年级数学上册 2022年教师个人工作计划范本-工作计划 国学小名士经典诵读电视大赛观后感诵读经典传承美德 医疗质量管理制度 2 2022年小学体育教师学期工作总结 2022年家长会心得体会集合15篇
    关于金锄头网 - 版权申诉 - 免责声明 - 诚邀英才 - 联系我们
    手机版 | 川公网安备 51140202000112号 | 经营许可证(蜀ICP备13022795号)
    ©2008-2016 by Sichuan Goldhoe Inc. All Rights Reserved.