求职是在每个技术人员的生涯中都要经历多次。对于我们大部分人而言,在进入自己心仪的公司之前少不了准备工作,有一份全面细致面试题将帮助我们减少许多麻烦。在跳槽季来临之前,特地做这个系列的文章,一方面帮助自己巩固下基础,另一方面也希望帮助想要换工作的朋友。
今天,长沙牛耳教育Java培训老师分享的是Java常见面试题—Spring专场,主要是针对Spring总结的面试题,有需要的小伙伴可以收入囊中了!
1、Springframework中有多少个模块,它们分别是什么?
Spring核心容器–该层基本上是Springframework的核心。它包含以下模块:
SpringCore
SpringBean
SpEL(SpringexpressionLanguage)
SpringContext
数据访问/集成–该层提供与数据库交互的支持。它包含以下模块:
JDBC(JavaDatabaseConnectivity)
ORM(ObjectRelationalMapping)
OXM(ObjectXMLMappers)
JMS(JavaMessagingService)
Transaction
Web–该层提供了创建Web应用程序的支持。它包含以下模块:
Web
Web–Servlet
Web–Socket
Web–Portlet
AOP–该层支持面向切面编程
Instrumentation–该层为类检测和类加载器实现提供支持。
Test–该层为使用JUnit和TestNG进行测试提供支持。
几个杂项模块:
Messaging–该模块为STOMP提供支持。它还支持注解编程模型,该模型用于从WebSocket客户端路由和处理STOMP消息。
Aspects–该模块为与AspectJ的集成提供支持。
2、什么是Spring配置文件?
Spring配置文件是XML文件。该文件主要包含类信息。它描述了这些类是如何配置以及相互引入的。但是,XML配置文件冗长且更加干净。如果没有正确规划和编写,那么在大项目中管理变得非常困难。
3、Spring应用程序有哪些不同组件?
Spring应用一般有以下组件:
接口-定义功能。
Bean类-它包含属性,setter和getter方法,函数等。
Spring面向切面编程(AOP)-提供面向切面编程的功能。
Bean配置文件-包含类的信息以及如何配置它们。
用户程序-它使用接口。
4、Spring中有多少种IOC容器?
BeanFactory-BeanFactory就像一个包含bean集合的工厂类。它会在客户端要求时实例化bean。
ApplicationContext-ApplicationContext接口扩展了BeanFactory接口。它在BeanFactory基础上提供了一些额外的功能。
5、Spring支持集中beanscope?
Springbean支持5种scope:
Singleton-每个SpringIoC容器仅有一个单实例。
Prototype-每次请求都会产生一个新的实例。
Request-每一次HTTP请求都会产生一个新的实例,并且该bean仅在当前HTTP请求内有效。
Session-每一次HTTP请求都会产生一个新的bean,同时该bean仅在当前HTTPsession内有效。
Global-session-类似于标准的HTTPSession作用域,不过它仅仅在基于portlet的web应用中才有意义。Portlet规范定义了全局Session的概念,它被所有构成某个portletweb应用的各种不同的portlet所共享。在globalsession作用域中定义的bean被限定于全局portletSession的生命周期范围内。如果你在web中使用globalsession作用域来标识bean,那么Web会自动当成session类型来使用。
仅当用户使用支持Web的ApplicationContext时,最后三个才可用。
6、SpringMVC框架有什么用?
SpringWebMVC框架提供模型-视图-控制器架构和随时可用的组件,用于开发灵活且松散耦合的Web应用程序。MVC模式有助于分离应用程序的不同方面,如输入逻辑,业务逻辑和UI逻辑,同时在所有这些元素之间提供松散耦合。
以上就是长沙牛耳教育Java培训小编分享的针对Spring总结的6道面试题,赶快分享给给你身边正在准备Java面试的朋友吧!