打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
Spring IOC相关例题及解析

1、(单选题)下列关于Spring特性中IOC描述错误的是:()

A.IOC就是指程序之间的关系由程序代码直接操控。
B.所谓“控制反转”,是指控制权由应用代码转到外部容器,控制权的转移
C.IOC将控制创建的职责搬进了框架中;并把它从应用代码脱离开来
D.当使用Spring的IOC容器时只需指出组件需要的对象,在运行时Spring的IOC容器会根据XML配置数据提供给它。

【正确答案】A
【答案解析】IOC是控制反转,是将代码中的操控权转到容器里去控制

2、(单选题)Spring的组成一共有( )块组成

A.1
B.3
C.5
D.7
【正确答案】D
【答案解析】Spring框架有七个模块组成,分别是:
Spring 核心容器(Core)
Spring AOP
Spring ORM
Spring DAO
Spring WEB
Spring上下文(Context)
Spring MVC

3、(单选题)下面关于spring描述错误的是:( )

A.Spring支持可插入的事务管理器,使事务划分更轻松,同时无需处理底层的问题。
B.Spring事务管理的通用抽象层还包括JTA策略和一个JDBC DataSource。
C.Spring的事务支持且依赖于Java EE环境。
D.Spring事务语义通过AOP应用于 POJO,通过XML或Java SE 5注释进行配置。
【正确答案】C
【答案解析】Spring的事务支持并不依赖于Java EE环境

4、(多选题)IOC有哪几种注入方式()

A.构造函数注入
B.属性注入
C.接口注入
D.以上都不对
【正确答案】A,B,C
【答案解析】IOC具有三种注入方式,分别是构造函数注入、属性注入和接口注入。

5、(多选题)对于以下配置,说法正确的是( )

<bean id="eb1" class="ioc.ExampleBean" 
init-method="init"

destroy-method=“destroy” lazy-init=“true”>
A.init-method用于指定初始化方法。
B.destroy-method用于指定销毁方法。
C.所有bean中的初始化方法名必须命名为init。
D.lazy-init如果为true,表示延迟实例化。
【正确答案】A,B,D
【答案解析】考查容器如何管理bean的生命周期。初始化方法和销毁方法的命名无特定要求,故C是错误的。

6、(多选题)以下这段配置,说法正确的是( )

<bean id="bar1" class="ioc.autowire.Bar" autowire="byName"/>

A.容器会采取自动装配的方式来建立依赖关系。
B.byName指定的是查找与属性名称一致的bean,调用set方法来完成注入。
C.byName有可能找到多个符合条件的bean,会出错。
D.autowire的值还可以是byType和constructor。
【正确答案】A,B,D
【答案解析】考查DI的基础知识,容器可以依据属性名称或者类型来完成自动装配,如果值为byName,容器会查找与属性名称一致的bean,并调用对应的set方法来完成注入。 因为本题中bar1是bean的id,所以是唯一的,所以不可能找到多个符合要求的bean。

7、(多选题)以下这段配置,说法正确的是( )

<util:properties id="config" location="classpath:config.properties"/>
<bean id="db" class="ioc.common.DemoBean">
<property name="brand" value="#{mp.brand}"/>
<property name="interest" value="#{user.interest[1]}"/>
<property name="city" value="#{user.cities[1]}"/>
<property name="score" value="#{user.scores.english}"/>
<property name="pwd" value="#{user.info.pwd}"/>
<property name="pagesize" value="#{config.pagesize}"/>
<property name="type" value=""/>
</bean>

A.spring表达式语法非常类似el表达式。
B.spring表达式可以读取bean或者集合中的数据。
C.#{user.interest[1]} 表示读取id为user的bean的inerest属性,该属性值是一个List集合,1表示集合中的下标。
D.value="“是错误的用法。
【正确答案】A,B,C
【答案解析】考查spring表达式的用法,value=”"表示赋值为空字符串,是正确的。

8、(多选题)下列关于Spring容器说法正确的是( )
A.在Spring中,任何的Java类和JavaBean都可以被当成Bean处理,这些Bean通过容器管理和使用。
B.Spring容器实现了IOC和AOP机制,这些机制可以简化Bean对象创建和Bean对象之间的解耦。
C.Spring容器提供了运行Servlet所需要的环境。
D.Spring容器有BeanFactory和ApplicationContext等类型。
【正确答案】A,B,D
【答案解析】此题目考查的是对Spring容器的基本认识。运行Servlet需要符合Servlet规范的容器,比如Tomcat。 Spring容器是Spring框架的核心组成模块,其它选项从各个方面描述了Spring容器的一些特点,故是正确的。

9、(多选题)以下这段配置,说法正确的是( )。

<bean id="mp" class="ioc.set.MobilePhone">
<property name="brand" value="华为mate8"/>
<property name="cpu" value="麒麟"/>
<property name="ram" value="2G"/>
</bean>

A.这里采用了set方式注入。
B.这里采用了构造器方式注入。
C.MobilePhone类一定有setBrand方法。
D.MobilePhone类一定有brand属生。
【正确答案】A,C
【答案解析】注意,依据以上配置,spring容器会去调用setBrand方法,但并不表名MobilePhone类一定具有brand属性。以上配置不属于构造方法注入方式。

10、(多选题)下面关于Spring的说法正确的是( )
A.Spring是一个重量级的框架
B.Spring是一个轻量级的框架
C.Spring是一个包含IOC和AOP两大特性的容器
D.Spring是一个入侵式的框架
【正确答案】B,C
【答案解析】Spring是一个轻量级框架,主要的两个模块是Spring IOC和Spring AOP

11、(多选题)下面关于IOC的理解,正确的是( )
A.控制反转
B.对象被动的接受依赖类
C.对象主动的去找依赖类
D.一定要用接口
【正确答案】A,B
【答案解析】Spring IOP即“控制反转”,对象只是被动的接收依赖对象

12、(多选题)下列关于Spring说法正确的有( )。
A.Spring是一个开源的轻量级的应用开发框架。
B.Spring为系统提供了一个整体解决方案。
C.Spring是一种开发语言。
D.Spring提供的IOC和AOP功能,可以将组件的耦合度降至最低,即解耦,便于系统日后的维护和升级。
【正确答案】A,B,D
【答案解析】此题目考查的是对Spring框架的基本认识。
Spring是应用开发框架,而不一种编程语言,所以C是错误的。其它选项是从不同角度描述Spring框架的优点,都是正确的。

13、(多选题)下列关于bean的生命周期,说法正确的是( )。
A.每个bean都必须提供相应的生命周期方法。
B.销毁方法只适用于singleton模式的bean。
C.销毁方法可以运行多次。
D.初始化方法只会执行一次。
【正确答案】B,D
【答案解析】考查容器如何管理bean的生命周期。在设计bean时,依据实际业务的需要,可以为bean提供相应的生命周期方法,比如在初始化方法当中完成资源加载等类似的逻辑,在销毁方法中释放资源。因此bean当中是否有生命周期相关的方法,完成取决于实际业务需要,并不是必须的,所以答案A是错误的。销毁方法用于释放资源,只需要执行一次,所以答案C也是错误的。

本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
spring面试题
spring学习总结
javabean属性名规范问题
spring框架-认识IOC(二)
7万字总结Spring,这回能看懂Spring源码了!
springboot注解详解(二)Spring Bean 注解、Spring DI注解与Scops注解
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服