Spring中的bean作业
单选题
1、下列选项中,不属于Spring框架优点的是(A)。
A、提供强大的、可以有效减少页面代码的标签
2、以下有关Bean的装配方式说法正确的是(C)。
C、在Spring实例化Bean的过程中,Spring首先会调用Bean的默认构造方法来实例化Bean对象,然后通过反射的方式调用setter方法来注入属性值;
注 :设值注入要求一个Bean必须提供一个无参构造方法
3、Spring中定义了一系列的注解,以下有关其常用的注解说明错误的是(A)。
A、@Autowired用于对Bean的属性变量、属性的setter方法及构造方法进行标注,配合对应的注解处理器完成Bean的自动配置工作,默认按照Bean的名称进行装配。
4、Spring的<bean>元素中的autowire属性取值不包括以下(D)。
D、byId
5、以下有关Spring框架优点的说法正确的是(B)。
B、Spring提供了对AOP的支持,它允许将一些通用任务,如安全、事务、日志等进行集中式处理,从而提高了程序的复用性
6、以下哪些不属于Spring 4.3版本中Bean的作用域(C)
C、response
7、Spring容器支持多种形式的Bean的装配方式,不包括有(B)。
B、基于properties的装配
8、下列有关Spring框架的描述,错误的是(D)1分
D、Spring是持久层框架
9、下列选项中,不属于Spring中实例化Bean的方式的是(D)。
D、抽象方法实例化
10、Spring的核心容器是其他模块建立的基础,以下哪个不是该容器的组成模块(D)。
D、AOP模块
11、以下关于Spring对Bean生命周期的管理说法错误的是(C)。
C、每次客户端请求singleton作用域的Bean时,Spring容器都会创建一个新的实例,并且不会管那些被配置成singleton作用域的Bean的生命周期。
12、以下有关Bean的singleton作用域说法错误的是(A)。
A、prototype是Spring容器默认的作用域
13、以下有关Spring的四个基础包说法正确的是(D)。
D、spring-core.RELEASE.jar包含Spring框架基本的核心工具类,Spring其它组件都要用到这个包里的类,是其它组件的基本核心
14、以下有关Spring中的Bean的相关说法正确的是(A)。
A、Spring可以被看做是一个大型工厂,这个工厂的作用就是生产和管理Spring容器中的Bean
15、以下有关Spring中Bean的作用域说法正确的是(D)。
D、globalSession:在一个全局的HTTP Session中,容器会返回该Bean的同一个实例。
多选题
16、Spring框架压缩包解压后的目录中lib中的JAR包说明正确的是(ABCD)。
17、以下有关依赖注入相关说法正确的是(ABCD)。
18、Spring中定义了一系列的注解,常用的注解有(ABCD)。
19、以下有关<bean>元素的autowire属性值及说明正确的是(ABCD)。
20、下列有关Spring框架的描述,正确的有(BC)1分
B、Spring是Java Web开发框架
C、Spring是开源框架
21、Spring的核心容器是其他模块建立的基础,以下哪些属于该容器的组成模块(ABC)。
A、Beans模块
B、Core模块
C、SpEL
22、以下有关<bean>元素的属性及子元素说明正确的是(ABC)。
A、id是一个Bean的唯一标识符,Spring容器对Bean的配置、管理都通过该属性来完成
B、name :Spring容器同样可以通过此属性对容器中的Bean进行配置和管理,name属性中可以为Bean指定多个名称,每个名称之间用逗号或分号隔开
C、class属性指定了Bean的具体实现类,它必须是一个完整的类名
注:最近版本Spring框架scope属性值有7种
23、以下哪些属于实例化Bean的方式(ABC)。
A、构造器实例化
B、静态工厂方式实例化
C、实例工厂方式实例化
24、以下有关Spring核心容器的说法正确的是(ABCD)。
25、以下哪些属于Spring框架模块(ABD)。
A、Core Container
B、Data Access/Integration
D、Messaging
26、Spring框架压缩包解压后的目录中内容说明正确的是(ABC)。
A、docs文件夹中包含Spring的API文档和开发规范
B、libs文件夹中包含开发需要的JAR包和源码
C、schema文件夹中包含开发所需要的schema文件
27、以下哪些属于Spring 4.3版本中为Bean作用域(ABCD)。
28、下列选项中,属于Spring框架优点的有(ABCD)。
29、在Spring配置文件中,Bean的作用域是通过<bean>元素的scope属性来指定的,该属性值可以设值包括有(ACD)。
A、request
C、session
D、application
30、以下有关Bean的singleton作用域说法正确的是(ABCD)。
填空题
61、构造器实例化是指Spring容器通过Bean对应类中默认的无参构造方法
来实例化Bean。参考答案 :【无参构造方法】
62、Spring容器支持多种形式的Bean的装配方式,如基于
XML的装配、基于注解(Annotation)的装配和自动装配。2分
参考答案 :【XML】
63、Spring是以IoC和AOP为内核
参考答案 :【AOP】
- Spring容器可以管理singleton作用域的Bean的生命周期。
参考答案 :【singleton】
65、在配置文件中,通常一个普通的Bean只需要定义id(或name)和class两个属性即可。参考答案 :【id】【name】【class】
66、依赖注入的实现方式通常有两种,一种是属性setter方法注入,另一种是构造方法注入。
参考答案 :【属性setter】【构造方法】
67、在Spring压缩包解压后的libs目录中,有四个Spring的基础包,它们分别对应Spring
核心容器的四个模块。
参考答案 :【核心容器】
68、Spring实例化Bean有三种方式,分别为构造器实例化、静态工厂方式实例化和实例工厂方式实例化
参考答案 :【实例工厂方式实例化】
69、在Spring配置文件中,Bean的作用域是通过<bean>元素的scope属性来指定的。
参考答案 :【scope】
70、Spring 4.3中为Bean的实例定义了7种作用域,其中singleton和prototype是最常用的两种。2分
参考答案 :【singleton】【prototype】
71、所谓自动装配,就是将一个Bean自动的注入到到其他Bean的Property中。2分
参考答案 :【Property】
72、Beans模块提供了BeanFactory,是工厂模式的经典实现,Spring将管理对象称为Bean。参考答案 :【Beans】
73、静态工厂方式实例化Bean时,其class属性指定的是静态工厂类,同时还需要使用factory-method属性来指定所创建的静态工厂方法。
参考答案 :【factory-method】
74、Spring中要将Bean的作用域定义成singleton,只需将scope的属性值设置为singleton
即可。参考答案 :【singleton】
- Spring的<bean>元素中包含一个autowire属性,我们可以通过设置该属性值来自动装配Bean。
参考答案 :【autowire】
AOP测试:
单选题
1、下列有关AOP专业术语中,用于指那些被拦截到的点的是(A)。
A、Joinpoint
2、以下不属于ProxyFactoryBean类中的常用可配置属性的是(C)。
C、targetClass
3、 以下有关CGLIB代理相关说法正确的是(D)。
D、Spring中的AOP代理,可以是JDK动态代理,也可以是CGLIB代理
4、关于AspectJ注解的介绍,说法错误的是(D)。
D、@After用于定义后置通知,相当于AfterReturningAdvice
5、以下关于Spring AOP 的介绍错误的是(C)。
C、虽然AOP是一种新的编程思想,采取横向抽取机制,是OOP的升级替代品
6、下列有关AOP专业术语中,用于表示切面与程序流程的交叉点的是(B)。
B、Pointcut
7、以下哪种类型不是Spring中的通知类型(D)。
D、最终通知
多选题
8、下列有关JDK动态代理的描述,正确的有(ABC)。
A、JDK动态代理是通过java.lang.reflect.Proxy 类来实现的
B、对于使用业务接口的类,Spring默认会使用JDK动态代理来实现AOP
C、Spring中的AOP代理,可以是JDK动态代理,也可以是CGLIB代理
D、使用JDK动态代理的对象不必实现接口
9、以下有关基于XML的声明式AspectJ及配置说法正确的是(ACD)。
A、基于XML的声明式AspectJ是指通过XML文件来定义切面、切入点及通知,所有的切面、切入点和通知都必须定义在<aop:config>元素内
B、Spring配置文件中的<beans>元素下可以1个<aop:config>元素,一个<aop:config>元素中可以包含属性和子元素
C、<aop:config>元素的子元素包括<aop:pointcut>、<aop:advisor>和<aop:aspect> ,在配置时,这3个子元素必须按照此顺序来定义
D、使用AspectJ进行开发还需要导入AspectJ框架相关的JAR包
答案说明 :Spring配置文件中的<beans>元素下可以多个<aop:config>元素
10、以下关于ProxyFactoryBean类中的常用可配置属性及说法正确的是(ABD)。
A、target:代理的目标对象
B、proxyInterfaces: 代理要实现的接口
C、proxyTargetClass: 是否对类代理而不是接口,设置为false时,使用CGLIB代理
D、interceptorNames: 需要织入目标的Advice
11、以下术语Spring AOP常用术语的有(ABCD)。2分
12、以下有关Spring中的通知类型及说法正确的是(ABCD)。
13、以下关于Spring AOP 的介绍正确的是(ABCD)
填空题
40、ProxyFactoryBean是FactoryBean接口的实现类,FactoryBean负责实例化一个Bean,而ProxyFactoryBean负责为其他Bean创建
代理实例。
参考答案 :【代理实例】
41、在Spring的配置文件中,配置切面使用的是<aop:aspect>元素。参考答案 :【<aop:aspect>】
42、AspectJ框架中注解["@Pointcut"]用于定义切入点表达式,在使用时还需定义一个包含名字和任意参数的方法签名来表示切入点名称。参考答案 :【@Pointcut】
43、基于XML的声明式AspectJ是指通过XML文件来定义切面、切入点及通知,所有的切面、切入点和通知都必须定义在<aop:config>
元素内。
参考答案 :【<aop:config>】
44、AOP动态代理模式有两个典型的例子,分别为JDK动态代理和CGLIB代理。
参考答案 :【JDK动态代理】
- AOP手动使用代理模式有两个典型的例子,分别为JDK动态代理和CGLIB代理。
参考答案 :【CGLIB代理】
46、Spring中的通知按照在目标类方法的连接点位置,可以分为以下5种类型:环绕通知、前置通知、后置通知、异常通知、引介通知。参考答案 :【环绕通知】
47、目前最流行的AOP框架有两个,分别为Spring AOP和AspectJ。参考答案 :【SpringAOP】【AspectJ】
48、使用AspectJ实现AOP有两种方式:一种是基于XML的声明式AspectJ,另一种是基于注解的声明式AspectJ。
参考答案 :【基于XML的声明式AspectJ】
- 在Spring配置文件中,<aop:aspect>子元素的pointcut-ref属性用于指定一个已经存在的切入点名称。
参考答案 :【切入点名称】
- Spring配置文件中的<beans>元素下可以包含多个<aop:config>元素,一个<aop:config>元素中又可以包含属性和子元素,其子元素包括<aop:pointcut>、<aop:advisor>和<aop:aspect>。
参考答案 :【<aop:aspect>】
51、@Aspect注解用于定义一个切面。
参考答案 :【@Aspect】
- Spring中的AOP代理默认就是使用JDK动态代理的方式来实现的。参考答案 :【JDK动态代理】
- AOP术语中Advice表示AOP框架在特定的切入点执行的增强处理,即在定义好的切入点处所要执行的程序代码。
参考答案 :【Advice(通知/增强处理)】
54、使用CGLIB创建代理类,该代理类需要实现MethodInterceptor接口,并实现接口中的intercept()方法。2分
参考答案 :【intercept()】
55、在实际应用中,Aspect(切面)通常是指封装的用于横向插入系统功能(如事务、日志等)的类。
参考答案 :【Aspect(切面)】
- AfterReturningAdvice(后置通知): 在目标方法执行后实施增强,可以应用于关闭流、上传文件、删除临时文件等功能。
参考答案 :【AfterReturningAdvice(后置通知)】
57、在Spring中,使用ProxyFactoryBean是创建AOP代理的基本方式。参考答案 :【ProxyFactoryBean】
58、AOP的全称是Aspect-Oriented Programming,即面向切面编程(也称面向方面编程)。
参考答案 :【AOP】
- Weaving(织入):将切面代码插入到目标对象上,从而生成代理对象的过程。
参考答案 :【Weaving(织入)】
- Spring中的AOP代理,可以是JDK动态代理,也可以是CGLIB代理,对于使用业务接口的类,Spring默认会使用JDK动态代理来实现AOP。
参考答案 :【JDK动态代理】
- AOP采取横向抽取机制,将分散在各个方法中的重复代码提取出来,然后在程序编译或运行时,再将这些提取出来的代码应用到需要执行的地方。
参考答案 :【横向抽取机制】
- 在Spring的配置文件中,切入点是通过<aop:pointcut>元素来定义的。
参考答案 :【<aop:pointcut>】
63、JDK动态代理是通过java.lang.reflect.Proxy 类来实现的,我们可以调用Proxy类的newProxyInstance()方法来创建代理对象。
参考答案 :【newProxyInstance()】
Spring数据库开发
单选题:
1、以下有关Spring的JDBC模块说法错误的是(A)。2分
A、Spring的JDBC模块负责数据库资源管理和数据处理;
答案说明 :Spring的JDBC模块负责数据库资源管理和错误处理
2、JdbcTemplate类包含在Spring JDBC模块的哪个包中(A)
A、核心包
3、下面描述中,关于query()方法说法错误的是(C)
C、List query(String sql, Object[] args, RowMapper rowMapper)会将args参数绑定到SQL语句中,并通过RowMapper返回一个Object类型的单行记录
4、以下关于@Transactional注解可配置的参数信息及秒正确的是(A)。
A、value用于指定需要使用的事务管理器,默认为"";
5、下列选项中,哪一个不是Spring中事务管理的核心接口(D)
D、TransactionManager
6、以下有关Spring事务管理及核心接口说法错误的是(D)。
D、在事务管理过程中,传播行为可以控制是否需要创建事务以及如何创建事务,通常情况下,对于数据的查询、插入、更新和删除操作,必须进行事务管理
7、以下基于XML方式的声明式事务管理配置文件中<tx:advice>元素的子元素<tx:method>属性描述错误的是(B)。
B、propagation:用于指定事务的传播行为,它的默认值为SUPPORTS
8、Spring JDBC模块主要由4个包组成,其中不包括(C)。
C、driverClass(数据库驱动包)
9、JdbcTemplate的直接父类是(A)
A、JdbcAccessor
10、以下有关事务管理方式相关说法错误的是(B)。
B、编程式事务管理:是通过AOP技术实现的事务管理,就是通过编写代码实现的事务管理,包括定义事务的开始、正常执行后的事务提交和异常时的事务回滚
11、下面关于update()方法描述错误的是(A)2分
A、update()方法可以完成插入、更新、删除和查询数据的操作
- 以下有关Spring中TransactionStatus接口的方法及说明错误的是(D)。
D、setFallbackOnly()设置事务回滚
答案说明 :setRollbackOnly()设置事务回滚
多选题:
13、PlatformTransactionManager接口常见的几个实现类有(ABD)。A、DataSourceTransactionManager
B、HibernateTransactionManager
C、MybatisTransactionManager
D、JtaTransactionManager
14、以下有关Spring配置文件中dataSource数据源配置时的属性说明正确的是(ABCD)。
15、以下哪些属于@Transactional注解的可配置参数(ABCD)。2分
16、以下关于Spring框架中JdbcTemplate的说法正确的是(ABCD)。
17、TransactionDefinition接口提供的获取事务相关信息的方法有(ABCD)。
18、以下Spring JDBC模块的主要包及说明正确的是(ABC)。
A、core:包含了JDBC的核心功能
B、dataSource:访问数据源的实用工具类
C、object:以面向对象的方式访问数据库
D、support:包含了core和dataSource包的支持类
答案说明 :support包含了core和object包的支持类
19、以下哪些属于<tx:method>元素中的常用属性(ABCD)。2分
20、以下属于基于XML方式的声明式事务管理配置文件中<tx:advice>元素的子元素<tx:method>的属性有(ABCD)。
21、以下有关JdbcTemplate类中常用的update()方法说明正确的是(ABCD)。
22、以下有关JdbcTemplate中常用的query()方法说法正确的是(ABCD)。
23、根据测试目的的不同,可以将软件测试分为(ABCD)。
24、Spring JDBC模块core包中包含的类有(ABCD)2分
单选题
1、MyBatis框架下载并解压后,有关mybatis-3.x的文件夹内容说明正确的是(C)。
C、其中mybatis-3.x.jar属于MyBatis核心包
2、关于MyBatis模糊查询中进行SQL字符串拼接时,说法错误的是(C)。
C、使用MySQL中的concat()函数进行字符串拼接,也无法防止SQL注入
3、MyBatis的删除操作有关说发错误的是(D)。
D、MyBatis的删除操作和添加操作时,也需要封装整个实体类
4、以下关于<select>元素及其属性说法错误的是(C)
C、resultMap表示外部resultMap的命名引用,返回时可以同时使用resultType和resultMap
5、有关MyBatis工作原理说法错误的是(C)。
C、可以通过MyBatis的环境等配置信息构建会话对象SqlSession
6、有关MyBatis配置文件中<settings>元素的说法错误的是(C)
C、<settings>元素中延迟加载的全局开关的参数lazyLoadingEnabled默认开启
7、关于<typeHandlers>元素说法错误的是(D)2分
D、<typeHandlers>元素的子元素<package>的handler属性用于指定类型处理器所在的包名,系统会在启动时自动的扫描com.itheima.type包下所有的文件,并把它们作为类型处理器
8、使用ORM框架后,应用程序不再直接访问底层数据库,而是以(C)的方式来操作持久化对象(PO,即Persisent Object)。
C、面向对象
9、以下有关<sql>元素说法错误的是(C)2分
C、使用<include>元素refid的属性值为自定义代码片段的name
10、以下有关MyBatis映射文件中<insert>元素说法正确的是(C)
C、keyColumn属性用于设置第几列是主键,当主键列不是表中的第一列时需要设置
11、关于MyBatis配置文件中<typeAliases>元素说法错误的是(B)
B、MyBaits配置文件中<typeAliases>元素的子元素<typeAlias>需要配置type和alias属性
12、MyBatis的更新操作有关说法错误的是(D)。
D、MyBatis的更新操作和添加操作时,只需要将insert()方法改为updat()方法即可
多选题:
- 关于MyBatis配置文件中<typeAliases>元素说法正确的是(ABD)
A、<typeAliases>元素用于为配置文件中的Java类型设置一个简短的名字,即设置别名
B、<typeAliases>元素的子元素<typeAlias>中的type属性用于指定需要被定义别名的类的全限定名;alias属性的属性值就是自定义的别名
C、如果省略<typeAliases>元素的alias属性,MyBatis会默认将类名作为别名
D、也可以通过在类名上使用@Alias(value = "user")的形式定义别名
- 有关<resultMap>元素相关说法正确的是(ABCD)
15、在MyBatis框架官网下载地址有几个下载链接,关于这三个下载链接说明正确的是(ACD)。
A、mybatis-3.x.zip是windows系统下MyBatis框架的压缩包
B、mybatis-3.x.tar.zip是Linux系统下MyBatis框架的压缩包
C、Source code(zip)是windows系统下MyBatis框架的源码包
D、Source code(tar.gz)是Linux系统下MyBatis框架的源码包
- 以下有关SqlSessionFactory的说法正确的是(ABCD)
17、MyBatis映射文件中主要元素包括(ABC)
A、<select>
B、<updte>
C、<sql>
D、<resultType>
18、MyBaits映射文件中<select>元素的常用属性包括有(ABCD)。
19、MyBaits配置文件中的主要元素包括以下(ABCD)
20、MappedStatement对象会对用户执行SQL语句的输入参数进行定义,这些参数类型可以是(ABCD)。
21、<resultMap>是MyBatis映射文件中最重要也是最强大的元素,包含了一些子元素主要有(ABCD)。
22、以下有关SqlSession的说明正确的是(ABCD)
23、MyBatis映射文件中<insert>的<selectKey>子元素可以设置以下几种属性(ABCD)。
24、为了方便转换,MyBatis框架提供了一些默认的类型处理器,包括有(ABCD)。
25、入门程序中MyBatis的全局配置文件中主要编写的内容有(ABC)。
A、数据库环境配置
B、JDBC事务管理
C、映射文件路径配置
D、缓存插件配置
26、MyBatis入门程序中添加操作有关说法正确的是(AD)。
A、在MyBatis的映射文件中,添加操作是通过<insert>元素来实现的
B、在MyBatis的映射文件中,添加操作的parameterType必须是PO类型
C、在MyBatis添加操作使用了SqlSession的add()方法
D、在MyBatis添加操作需要进行事务提交
27、在配置文件中,<mappers>元素用于指定MyBatis映射文件的位置,一般可以使用以下哪些方法引入映射器文件(ABCD)。
单选题
1、以下关于MyBatis映射文件中<association>元素属性的说明错误的是(D)
D、fetchType:指定在关联查询时是否启用延迟加载。fetchType属性有lazy和eager两个属性值,默认值为eager
2、当有多个选择的情况是,值需要从多个选项中选择一个去执行时,可以使用的动态SQL元素是(B)
B、<choose>、<when>、<otherwise>
3、以下有关MyBatis动态SQL中的主要元素说法错误的是(D)
D、<bind>从OGNL表达式中创建一个变量,并将其绑定到上下文,只于模糊查询的sql中
4、以下不属于<foreach>元素中使用的属性的是(C)。
C、current
5、在Java中,以下有关类的关联关系描述错误的是(A)。2分
A、在Java中,通过对象也可以进行关系描述,他们分别为一对一、一对多、多对一和多对多。
6、下面关于<collection>元素的描述正确的是(A)2分
A、MyBatis就是通过<collection>元素来处理一对多关联关系的
7、以下关于<association>元素中常用属性说法错误的是(D)。2分
D、fetchType指定在关联查询时是否启用延迟加载,默认值为eager
8、下面关于数据库中多表之间关联关系说法错误的是(B)2分
B、一对多关联关系在“一”的一方,添加“多”的一方的主键作为外键
- SQL语句中,where后直接跟and,这在运行时肯定会报(A)错误。
A、SQL语法
10、下面属性中不属于<association>元素属性的是(C)2分
C、ofType
- 以下关于<foreach>元素中使用的几种属性的描述错误的是(C)
C、collection:配置的是传递过来的参数类型,它可以是一个array、list(或collection)、Map集合的键、POJO包装类中数组或集合类型的属性名等
12、下面关于Java对象之间的关联关系描述正确的是(B)2分
B、一对多的关系:就是一个A类类型对应多个B类类型的情况
13、以下关于MyBatis的<set>元素的使用及说法正确的是(A)2分
A、<set>元素主要用于更新操作,其主要作用是在动态包含的SQL语句前输出一个SET关键字,并将SQL语句中最后一个多余的逗号去除
多选题
14、以下有关<choose>及其子元素说法错误的是(ABCD)2分
15、MyBatis映射文件中<association>元素通常可以配置以下属性(ABD)。
A、property
B、fetchType
C、ofType
D、select
16、在关系型数据库中,多表之间的关联关系主要包括(ABCD)2分
17、以下关于MyBatis动态SQL中<trim>元素<where>元素说法错误的是(BCD)2分
A、使用<where>元素替换条件“where 1=1”后,既保证了where后面的条件成立,又避免了where后面第一个词是and或者or之类的关键词
B、使用<where>元素对“where 1=1”条件进行了替换,只用当<where>元素的test属性成立才会在拼接SQL中加入where关键字,否则将不会添加
C、<trim>元素和<where>元素功能相同,都是对对“where 1=1”条件进行替换,并去除多余字符
D、以上说法都正确
18、以下有关MyBatis中多对对关联映射的使用及说法正确的是(CD)
C、MyBatis是通过<resultMap>元素的<collection>子元素该元素来处理多对一关联关系的
D、多对多关联映射中也有嵌套查询和嵌套结果两种方式
19、MyBatis映射文件中<collection>元素通常可以配置以下属性(ABCD)。
A、property
B、column
C、ofType
D、select
20、以下MyBatis一对多关联映射的使用及说法正确的是(ABC)2分
A、MyBatis是通过<resultMap>元素的<collection>子元素该元素来处理一对多关联关系的
B、<collection>子元素的属性大部分与<association>元素相同,但其还包含一个特殊属性——ofType
C、MyBatis一对多关联映射同样可以使用嵌套结果和嵌套查询的方式
D、ofType属性与javaType属性意义相同
21、MyBatis动态SQL中的主要元素包含有(ABCD)。
22、关于<if>元素的使用及说法正确的是(BC)
B、使用<if>元素的test属性可以对传入参数进行条件判断,如果传入的条件成立就进行动态SQL组装
C、<if>元素可以出现多个
23、以下关于在进行模糊查询编写SQL语句的时候可能出现问题描述正确的是(ABC)。
A、如果使用“${}”进行字符串拼接,则无法防止SQL注入问题
B、如果使用concat函数进行拼接,则只针对MySQL数据库有效
C、如果使用的是Oracle数据库,则要使用连接符号“||”
D、如果使用的是MyBatis框架,则要使用<bind>元素来解决
单选题
1、下面不属于@RequestParam注解类型属性的是(A)2分
A、id
2、下面关于Spring MVC特点说法错误的是(A)。2分
A、灵活性强,但不易于与其他框架集成
3、下面关于请求处理方法返回类型说法错误的是(D)。2分
D、void类型主要在异步请求时使用,它既返回数据,又跳转视图
4、下面选项中,哪一个是Spring的编码过滤器类(B)2分
B、org.springframework.web.filter.CharacterEncodingFilter
5、下面关于<load-on-startup>元素说法错误的是(C)。2分
C、如果<load-on-startup>元素的值为1,则在应用程序启动时会延迟加载该Servlet
6、下面选项中,能够正确访问下面代码中方法是(C)
@Controller
@RequestMapping("/first")
public class FirstController{
@RequestMapping("/first")
public String handleRequest(HttpServletRequest request,
HttpServletResponse response, Model model) throws Exception {
model.addAttribute("msg", "这是我的第一个Spring MVC程序");
return "first";
}
}
C、http://localhost:8080/chapter12/first/first
7、以下有关Spring MVC常用的默认参数类型及说法错误的是(C)。
C、HttpSession通过session对象得到session中存放的对象
- 用户通过浏览器向服务器发送请求时,负责拦截用户请求的是(D )。
D、前端控制器
9、入门程序中,不是必须引入的JAR包是(D)2分
D、log4j的JAR
10、下面关于Spring MVC数据绑定流程说法错误的是(C)。2分
C、DataBinder调用BindingResult组件进行数据类型转换、数据格式化等工作
11、Spring MVC是Spring提供的一个实现了(A)设计模式的轻量级Web框架。2分
A、Web MVC
12、下面关于@RequestMapping注解说法错误的是(D)。2分
D、@RequestMapping注解的value属性必须标注
13、RequestMapping注解类型的作用是(A)。2分
A、用于映射一个请求或一个方法
14、下面不属于Spring MVC中常用的默认参数类型的是(D)。2分
D、ModelView
15、下面关于包装POJO类型数据绑定的说法正确的是(A)。2分
A、如果查询条件参数是包装类的直接基本属性,则参数名直接用对应的属性名
16、@RequestParam注解中可以省略属性名称的是(B)2分
B、value
17、下面关于组合注解的说法正确的是(B)。2分
B、组合注解可以简化常用的HTTP方法的映射
18、下面类型中,不属于请求处理方法参数类型的是(D)。2分
D、void
19、以下有关Spring MVC支持的返回值类型及说法错误的是(B)。
B、String返回值类型也可以携带数据并跳转视图;
20、以下有关Spring MVC数据绑定中集合数据绑定的说法正确的是(D)。
D、在使用集合数据绑定时,后台方法中不支持直接使用集合形参进行数据绑定
21、Spring MVC中的后端控制器是指(D)。2分
D、Handler
多选题:
22、注解@RequestMapping可以标注在(AB)。2分
A、一个类上
B、一个方法上
23、以下哪些属于@RequestMapping注解的属性(ABCD)。2分
24、在使用Spring MVC框架时,web.xml配置文件中可以配置有(ABCD)。
25、下面几种类型中,属于Spring MVC可以绑定的简单数据类型的是(ABC)2分
A、int
B、String
C、Double
D、Array
26、下面关于Spring MVC特点说法正确的是(ABCD)。2分
27、在Spring MVC的配置文件中,属于可选配置的是(ABC)2分
A、处理器映射器
B、处理器适配器
C、视图解析器
D、处理器
28、以下哪些属于Spring MVC所支持的方法返回类型有(ABCD)。2分
拦截器以及文件上传下载:
单选题:
1、关于用户权限验证的执行流程,说法错误的是( D )2分
D、当已登录的用户在系统主页中单击“退出”链接时,系统会回到主页面
2、下面关于文件上传表单说法错误的是(B)。2分
B、form表单的method属性设置为get
3、下面属于CommonsMultipartResolver属性的是(D)。
D、defaultEncoding
4、下面不属于拦截器类中的方法的是(D)。2分
D、afterpletion()
5、以下有关Spring MVC配置文件中拦截器的配置说法错误的是(D)。
D、<mvc:exclude-mapping>元素用于配置不需要拦截的路径请求
6、下列关于拦截器的执行流程说法错误的是( C )2分
C、在业务处理器(即控制器Controller类)处理完请求后,会执行preHandle()方法
7、下面不属于文件解析器类CommonsMultipartResolver属性的是( D)2分
D、lazy
8、以下哪个方法可以定义Spring MVC中的拦截器( B)2分
B、实现WebRequestInterceptor
9、下面关于文件下载方法内容描述错误的是( D)2分
D、HttpStatus.OK表示500,即服务器已成功处理了请求
10、下面关于MultipartFile接口中说法错误的是(B)。2分
B、getSize()用于获取上传文件的大小,单位是KB
11、以下有关CommonsMultipartResolver类的属性及说法错误的是(C)。
C、defaultEncoding:默认编码格式,默认为utf-8
12、以下有关Spring MVC中自定义拦截器的方法说法错误的是(C)。
C、postHandle()方法会在控制器方法和解析视图之前执行
多选题:
13、以下哪些属于<mvc:interceptors>元素的子元素(ABC)。2分
A、<mvc:interceptor>
B、<bean>
C、<ref>
D、<mvc:mapping>
14、在Spring MVC中实现文件上传下载,还需要导入支持文件上传下载的相关JAR包(AC)。2分
A、commons-fileupload.jar
B、commons-filedownload.jar
C、commons-io.jar
D、commons-beanutils.jar
15、以下哪些属于MultipartFile接口中的方法(ABCD)。2分
16、IE系列浏览器的请求代理User-Agent中的关键字有(ABC)。2分
A、MSIE
B、Trident
C、Edge
D、Mozilla
17、通过Spring MVC中的拦截器可以实现以下哪些功能(ABCD)。2分
18、在实现文件上传案例中,Spring MVC配置文件主要配置内容有(ABCD)。
19、下面属于文件解析器类CommonsMultipartResolver属性的是(ABCD)。2分
20、以下有关多个拦截器的执行流程说法正确的是(AD)。2分
A、有多个拦截器时,拦截器的执行顺序与配置文件中所定义的拦截器的顺序相关
D、不管配置顺序如何,拦截器的afterCompletion()方法总是最后执行
21、在实现中文名文件下载时,以下说法正确的是(AB)。2分
A、要在前端页面发送请求前先对中文名进行统一编码,然后在后台控制器类中对文件名称进行相应的转码
B、在jsp页面可以使用URLEncoder类中的encoder(String s, String enc)方法将中文转码
22、以下哪些方法可以定义Spring MVC中的拦截器(ABC)。
A、实现HandlerInterceptor接口
B、实现WebRequestInterceptor接口
C、继承HandlerInterceptorAdapter类
D、继承WebRequestInterceptor类
23、下面关于文件下载方法内容描述正确的是(ABC)。2分
A、响应头信息中的MediaType代表的是Interner Media Type(即互联网媒体类型),也叫做MIME类型
B、MediaType.APPLICATION_OCTET_STREAM的值为application/octet-stream,即表示以二进制流的形式下载数据
C、HttpStatus类型代表的是Http协议中的状态
D、HttpStatus.OK表示500,即服务器已成功处理了请求
答案说明 :HttpStatus.OK表示200
24、以下有关实现用户登录权限验证的说法错误的是(AD)。2分
A、用户登录时,需要对用户名或密码使用拦截器验证
D、用户登录成功后直接放行即可
SSM框架整合:
单选题
1、下面选项中,不属于整合SSM框架所编写的配置文件的是( D )
D、struts.xml
2、下面选项中,关于Web表现层说法错误的是(C )2分
C、Controller类会调用业务逻辑层中相应组件的业务逻辑方法来处理用户响应
3、下列关于BOOT客户管理系统用户登录模块说法错误的是( D )2分
D、为了保证系统的稳定性,用户登录时必须实现登录验证
4、拦截用户请求是在哪一层次中实现的(D)。2分
D、Web表现层
5、下列关于SSM框架的整合说法错误的是(D )2分
D、SSM框架的整合就涉及到Spring MVC与Spring之间的整合
6、下列选择中,不属于Jackson所使用的JAR包的是(D)。
D、jackson-json-2.8.6.jar
- 下列关于客户管理模块说法,正确的是( A )
A、查询操作通常可以分为按条件查询和查询所有
8、下列选项中,不需要配置在web.xml中的是(C)。2分
C、视图解析器
9、下列选项中,不属于SSM整合时所需的JAR包的是(D)。2分
D、xwork-core-2.3.24.jar
10、下列选项中,不属于BOOT客户管理系统中功能的是(B)。
B、用户管理
11、下列选项中,属于Spring MVC所必须的JAR包的是(A)。2分
A、spring-web-4.3.6.RELEASE.jar
多选题:
12、下列选项中,属于SSM框架整合时所编写的配置文件的是(ABC)。A、db.properties
B、applicationContext.xml
C、C、mybatis-config.xml
D、struts.xml
答案说明 :struts.xml是Struts2的配置文件
13、下列选项中,属于SSM整合时所需的JAR包的是(ABC)。4分
A、spring-web-4.3.6.RELEASE.jar
B、spring-webmvc-4.3.6.RELEASE.jar
C、ant-1.9.6.jar
D、xwork-core-2.3.24.jar
14、下列选项中,需要配置在web.xml中的是(ABD)。4分
A、Spring的监听器
B、编码过滤器
C、视图解析器
D、前端控制器
参考答案 :A,B,D
答案说明 :视图解析器配置在Spring MVC的配置文件中
15、下列关于SSM框架的整合说法正确的是( ABC )。4分
A、Spring MVC与Spring之间不存在整合的问题
B、SSM框架的整合就涉及到Spring与MyBatis的整合
C、SSM框架的整合就涉及到Spring MVC与MyBatis的整合
D、SSM框架的整合就涉及到Spring MVC与Spring之间的整合
16、下列选项中,不是Spring MVC所必须的JAR包的是(BCD)。4分
A、spring-web-4.3.6.RELEASE.jar
B、spring-webmvc-portlet-4.3.6.RELEASE.jar
C、spring-webmvc-4.3.6.RELEASE-javadoc.jar
D、spring-websocket-4.3.6.RELEASE.jar
17、下列选择中,属于Jackson所使用的JAR包的是(ABC)。4分
A、jackson-annotations-2.8.6.jar
B、jackson-core-2.8.6.jar
C、jackson-databind-2.8.6.jar
D、jackson-json-2.8.6.jar