ssm题库分享
1、(2分)以下哪个选项描述了在 SSM 框架集成中,MyBatis 的作用?
A、实现容器管理和事务控制等功能
B、实现数据访问和对象映射等功能
C、实现 Inversion of Control 和依赖注入等功能
D、实现面向切面编程和声明式事务等功能
你的答案:B正确答案:B
【答案解析】
在 SSM 框架集成中,MyBatis 的作用是实现数据访问和对象映射等功能
2、
(2分)在SpringMVC中,代码如下:
@Controller
@RequestMapping("items")
public class itemsController{
@RequestMapping("/queryItems")
public ModelAndView queryItems()
{ //省略。。。 } }
如果其他配置都正确,该项目映射请求的URL是什么()
A、items/queryItems
B、ItemsController/queryItems
C、queryItems/items
D、items
你的答案:A正确答案:C
【答案解析】
在 Spring MVC 中,@RequestMapping("items")表示请求路径的子目录,@RequestMapping("/queryItems")表示请求的具体资源路径
3、(2分)以下哪个注解可以用在一个JavaBean的setter方法上以代替使用元素进行依赖注入?
A、@Value
B、@Component
C、@Autowired
D、@Resource
你的答案:C正确答案:C
【答案解析】
@Autowired注解可以用在一个JavaBean的setter方法上以代替使用元素进行依赖注入。
4、(2分)Mybatis中如何禁用一级缓存?
A、在Mapper接口方法中设置@Options(useCache = false)
B、在Mybatis配置文件中设置
C、不需要禁用,一级缓存默认是关闭的
D、在Mapper接口中设置@CacheNamespace(implementation = NoCache.class)
你的答案:B正确答案:A
【答案解析】
在Mapper接口方法上使用@Options注解,设置useCache为false可以禁用一级缓存。
5、(2分)以下哪个选项描述了 Spring MVC 中视图解析器的作用?
A、将请求处理器方法的请求参数解析为视图对象
B、将控制器的映射路径解析为实际的视图对象
C、将视图名称解析为实际的视图对象
D、将请求处理器方法的返回值转换为视图对象
你的答案:C正确答案:C
【答案解析】
在 Spring MVC 中,视图解析器的作用是将视图名称解析为实际的视图对象
6、(2分)下面是 IOC 自动装载方法的是()
A、constructor
B、byClass
C、byName
D、byMethod
你的答案:A正确答案:C
【答案解析】
第一种根据名称自动装配("byName"),第二种是根据类名("byType")
7、(2分)在 Maven 的 pom.xml 文件中, 元素用于什么?
A、指定项目的打包方式和构建输出目录。
B、指定项目的依赖。
C、继承父项目的配置信息。
D、指定项目的版本号和基础信息。
你的答案:B正确答案:B
【答案解析】
在 Maven 的 pom.xml 文件中, 元素用于指定项目的依赖信息。通过 元素可以列出项目需要的所有依赖,Maven 会根据这些依赖自动下载并管理依赖库。
8、(2分)以下哪个方法可以用于注册拦截器?
A、addInterceptor
B、addReturnValueHandlers
C、addMappingForUrlPatterns
D、addArgumentResolvers
你的答案:A正确答案:A
【答案解析】
在 Spring MVC 中,可以使用 addInterceptor 方法来注册拦截器。
9、(2分)Mybatis中的ORM指的是什么?
A、Object-Relational Mapping
B、Object-Response Mapping
C、Object-Resource Mapping
D、Object-Reference Mapping
你的答案:A正确答案:A
【答案解析】
Mybatis是一种ORM框架,可以通过定义映射文件,将Java对象和关系型数据库中的表进行映射,使得Java程序员可以使用面向对象的方式操作数据库,不需要编写SQL语句。
10、(2分)以下哪种是Mybatis中的对象交互层?
A、Controllers层
B、Model层
C、Services层
D、DAO层
你的答案:D正确答案:D
【答案解析】
在Mybatis中,DAO层通常是与数据库进行交互的对象交互层。
11、(2分)以下哪个选项为MVC模式中的控制器?
A、处理应用程序中的业务逻辑
B、定义了应用程序中视图的对象
C、处理应用程序的输入和输出
D、接收请求并决定如何响应
你的答案:D正确答案:D
【答案解析】
在MVC模式中,控制器是接收请求并决定如何响应的对象。
12、(2分)以下哪个选项最适合描述在SSM框架中配置监听器?
A、在MyBatis配置文件中配置数据源和Mapper接口映射关系
B、在Spring配置文件中使用context:component-scan标签扫描Spring管理的Bean组件
C、在web.xml文件中配置Spring容器的监听器和MyBatis的SqlSessionFactory监听器
D、在web.xml文件中配置Spring的DispatcherServlet和Spring的ContextLoaderListener
你的答案:D正确答案:D
【答案解析】
在SSM框架整合中,监听器通常用于配置Spring的DispatcherServlet和Spring的ContextLoaderListener,而不是配置Spring容器的监听器和MyBatis的SqlSessionFactory监听器
13、(2分)Spring中利用注解的方式实现注入,@Autowired和@Resource的功能相同,但默认的注入方式不同,下面的选项正确的是
A、@Autowired默认是byName方式,@Resource默认是byType方式
B、@Autowired默认是byType方式,@Resource默认是byName方式
C、@Autowired默认是byName方式,@Resource默认是byName方式
D、@Autowired默认是byType方式,@Resource默认是byType方式
你的答案:B正确答案:B
【答案解析】
@Autowired默认byType,@Resource byname
15、(2分)Spring框架中的IoC容器是
A、BeanFactory
B、XmlBeanFactory
C、ServletContext
D、SqlSessionFactory
你的答案:A正确答案:A
【答案解析】
Spring框架中的IoC容器包括BeanFactory和ApplicationContext等
16、(2分)以下哪种方式可以用于将属性绑定到视图中?
A、在请求处理器方法中设置 ModelAndView
B、通过属性编辑器设置
C、通过 RedirectAttributes 设置
D、在 Web 应用的配置文件中设置
你的答案:A正确答案:A
【答案解析】
17、(2分)以下哪个文件是Maven的核心配置文件?
A、pom.xml
B、build.xml
C、config.xml
D、settings.xml
你的答案:A正确答案:D
【答案解析】
18、(2分)以下哪个注解可以用于标记全局异常处理器?
A、@ControllerAdvice
B、@RestController
C、@ExceptionHandlerAdvice
D、@ExceptionHandler
你的答案:C正确答案:A
【答案解析】
@ControllerAdvice 是可以用于标记全局异常处理器的注解。
19、(2分)Maven的主要作用是?
A、网络协议工具
B、操作系统管理工具
C、项目管理和构建工具
D、数据库管理工具
你的答案:C正确答案:C
【答案解析】
Maven是一个项目管理和构建工具,能够帮助开发者自动化地构建和管理Java项目。
20、(2分)以下哪个属性用于在Mybatis中配置缓存中存储的对象数量?
A、size
B、flushInterval
C、readOnly
D、eviction
你的答案:A正确答案:A
【答案解析】
size属性用于在Mybatis中配置缓存中存储的对象数量。
21、(2分)以下哪个选项为MVC模式中的视图?
A、接收请求并决定如何响应
B、处理应用程序的输入和输出
C、定义了应用程序中视图的对象
D、处理应用程序中的业务逻辑
你的答案:C正确答案:C
【答案解析】
在MVC模式中,视图是定义了应用程序中视图的对象。
22、(2分)以下哪个选项描述了在 SSM 框架集成中,Spring MVC 与 MyBatis 的整合方式?
A、XML 配置
B、Bean 配置
C、Java 配置
D、注解配置
你的答案:B正确答案:A
【答案解析】
在 SSM 框架集成中,Spring MVC 与 MyBatis 的整合方式也是基于 XML 配置的。
23、(2分)Maven中的仓库是指:
A、存储所有Maven依赖的地方
B、存储所有Maven插件的地方
C、存储所有Maven构建产物的地方
D、存储所有Maven项目的地方
你的答案:A正确答案:A
【答案解析】
Maven仓库是用于存储所有Maven依赖的地方。Maven会自动从仓库中下载依赖,并在构建过程中使用这些依赖。Maven的中央仓库是一个公共的仓库,包含了大量的第三方依赖。
24、(2分)以下哪个选项描述了在Spring中定义通知的类型?
A、Begin、End和During
B、Start、Finish和Complete
C、Before、After和Around
D、Before、AfterReturning和AfterThrowing
你的答案:D正确答案:D
【答案解析】
在Spring中定义通知的类型有Before、AfterReturning和AfterThrowing。
25、(2分)以下哪个注解可以用于实现 RESTful 风格的 URL?
A、@RequestMapping
B、@PathVariable
C、@Controller
D、@ResponseBody
你的答案:A正确答案:B
【答案解析】
在 Spring MVC 中,@PathVariable 注解可以用于实现 RESTful 风格的 URL。
26、(2分)要自定义一个500错误处理页面,在JSP页面需要设置下面哪个属性()
A、pageEncoding="UTF-8"
B、isErrorPage="true"
C、contentType="text/html; charset=UTF-8"
D、language="java"
你的答案:B正确答案:B
【答案解析】
定义一个错误处理界面
27、(2分)在Mybatis中,使用哪个元素可以将结果集的一列值映射到Java对象的一个属性中?
A、
B、
C、
D、
你的答案:A正确答案:A
【答案解析】
在Mybatis中,使用元素将结果集的一列值映射到Java对象的一个属性中。
28、(2分)Mybatis中的SqlSession是什么?
A、用于执行SQL语句的对象
B、数据库事务对象
C、Java对象和数据库表的映射对象
D、数据库连接对象
你的答案:A正确答案:A
【答案解析】
SqlSession是用于执行SQL语句的对象,它是线程不安全的,每个线程都应该有自己的SqlSession对象,可以通过SqlSessionFactory来创建SqlSession。
29、(2分)下面哪个不是Spring通知的类型
A、After returning advice(返回后通知)
B、Before advice(前置通知)
C、 Insert advice(插入通知)
D、Throws advice(抛出通知)
你的答案:C正确答案:C
【答案解析】
没有 Insert advice类型的通知
30、(2分)以下哪个选项描述了Mybatis延迟加载的工作流程?
A、Mybatis在查询生成时只查询主表,一旦需要使用延迟加载的子表,再次发出SQL查询子表
B、Mybatis在查询生成时查询主表和子表,但是只返回主表结果,等到需要使用子表时再次发出SQL查询子表
C、Mybatis在查询生成时查询主表和子表,一旦需要使用延迟加载的子表,立即发出SQL查询子表
D、Mybatis在查询生成时只查询主表,一旦需要使用延迟加载的子表,暂时缓存待查询的子表结果,等到需要使用子表时再返回子表结果
你的答案:A正确答案:A
【答案解析】
Mybatis在查询生成时只查询主表,一旦需要使用延迟加载的子表,再次发出SQL查询子表,这是Mybatis延迟加载的工作流程。
31、(2分)下面哪个选项标签表示set集合注入()
A、list
B、map
C、array
D、set
你的答案:A正确答案:D
【答案解析】
set标签标识set集合注入
32、(2分)以下哪个选项描述了在AOP中的连接点?
A、描述切面功能的一般名称
B、代码中的某个关键点,在此点上可以应用通知
C、特定的静态位置,例如类的构造函数或静态初始化块
D、具体的运行时位置,例如方法的返回值或抛出的异常
你的答案:B正确答案:B
【答案解析】
在AOP中,连接点是代码中的某个关键点,在此点上可以应用通知,例如方法调用或对象构造。
33、(2分)Mybatis中的懒加载和延迟加载有什么区别?
A、懒加载只有在调用selectKey()、selectList()、selectOne()等方法后才会执行,而延迟加载可以在查询结果集之前进行。
B、懒加载只有在调用load()方法后才会执行,而延迟加载可以在查询结果集之前进行。
C、懒加载只有在调用getObject()方法后才会执行,而延迟加载可以在查询结果集之前进行
D、懒加载只有在调用isLoaded()方法后才会执行,而延迟加载可以在查询结果集之前进行。
你的答案:B正确答案:C
【答案解析】
Mybatis中的懒加载和延迟加载的区别在于懒加载只有在调用getObject()或者load()方法后才会执行,而延迟加载可以在查询结果集之前进行。。
34、(2分)以下哪个选项不是 Spring MVC 中的视图解析器?
A、InternalResourceViewResolver
B、ObjectFactoryViewResolver
C、XmlViewResolver
D、ResourceBundleViewResolver
你的答案:B正确答案:B
【答案解析】
在 Spring MVC 中,InternalResourceViewResolver、ResourceBundleViewResolver 和 XmlViewResolver 都是常用的视图解析器。ObjectFactoryViewResolver 不是 Spring MVC 中的视图解析器。
35、(2分)Mybatis中如何配置使用二级缓存?
A、在Mapper接口中设置@CacheNamespace
B、需要手动创建并配置二级缓存
C、在Mapper接口方法中设置@Options(useCache = true)
D、在Mybatis配置文件中设置
你的答案:D正确答案:D
【答案解析】
在Mybatis配置文件中设置即可开启二级缓存。
36、(2分)以下哪个元素用于在Mybatis中定义SQL语句的内容?
A、resultMap
B、parameter
C、typeHandler
D、SQL
你的答案:D正确答案:D
【答案解析】
在Mybatis中,SQL语句的内容是通过SQL元素定义的。
37、(2分)以下哪个模块提供了声明式AOP支持?
A、MVC
B、Data Access/Integration
C、Core
D、AOP
你的答案:D正确答案:D
【答案解析】
Spring AOP模块提供了声明式AOP支持
38、(2分)以下哪个Spring模块提供了对JavaMail和任务调度的支持?
A、Core
B、Mail
C、AOP
D、Scheduling
你的答案:B正确答案:D
【答案解析】
Spring Scheduling模块提供了任务调度的支持
39、(2分)关于AspectJ注解的介绍,说法错误的是
A、@Aspect用于定义一个切面
B、@After用于定义后置通知,相当于AfterReturningAdvice
C、@Before用于定义前置通知,相当于BeforeAdvice
D、@Pointcut用于定义切入点表达式
你的答案:B正确答案:B
【答案解析】
@After: 后置通知, 在方法执行之后执行
40、(2分)Mybatis中的延迟加载指的是什么?
A、在查询时指定查询结果的排序方式
B、在查询时指定查询结果的数量
C、将查询结果缓存到本地
D、在需要时才加载关联对象
你的答案:D正确答案:D
【答案解析】
Mybatis中的延迟加载是指在需要时才加载关联对象,可以减少查询的开销和提高查询效率。
1、(2分)Mybatis的二级缓存是基于什么级别的缓存实现的?
A、基于session的缓存
B、基于Mapper的缓存
C、基于查询语句的缓存
D、应用程序级别的缓存
你的答案:BD正确答案:BD
【答案解析】
Mybatis的二级缓存是基于应用程序级别的缓存和Mapper级别的缓存实现的。
2、(2分)以下哪些注解可以用来注入集合类型的依赖项?
A、@Inject
B、@Value
C、@Autowired
D、@Resource
你的答案:ACD正确答案:ACD
【答案解析】
@Autowired、@Inject和@Resource注解均可以用来注入集合类型的依赖项
3、(2分)IOC有哪几种注入方式()
A、属性注入
B、接口注入
C、构造函数注入
D、参数注入
你的答案:ACD正确答案:ABC
【答案解析】
IOC具有三种注入方式,分别是构造函数注入、属性注入和接口注入。
4、(2分)Mybatis中通过哪些方式避免N+1查询问题?
A、使用延迟加载
B、使用缓存
C、使用嵌套查询
D、使用左连接查询
你的答案:ACD正确答案:ACD
【答案解析】
Mybatis中通过使用嵌套查询、左连接查询和延迟加载等方式可以避免N+1查询问题。
5、(2分)Mybatis中的#{}和${}有什么区别?
A、#{}是预编译语句,${}是字符串替换
B、${}可以防止SQL注入,#{}不能防止SQL注入
C、#{}是字符串替换,${}是预编译语句
D、#{}可以防止SQL注入,${}不能防止SQL注入
你的答案:AD正确答案:AD
【答案解析】
A。#{}是预编译语句,可以防止SQL注入,同时可以自动处理Java类型和JDBC类型之间的转换;${}是字符串替换,不能防止SQL注入,并且需要开发者自行处理Java类型和JDBC类型之间的转换。
6、(2分)下面关于MVC设计模式描述正确的是:( )
A、控制层主要用于访问数据库,对数据库的数据进行直接处理
B、视图层主要用于界面输出如Smarty模板就属于这一层
C、将web应用,被分成三个层——模型层、视图层、控制层
D、MVC英文即Model-View-Controller,中文翻译为'模型-视图-控制器
你的答案:BCD正确答案:BCD
【答案解析】
模型层:表示企业数据和业务逻辑,是应用程序的主体部分; 数据库相关操作是在模型层
7、(2分)下面关于Spring AOP expression 表达式的写法:execution(* com.xyz.myapp.service...(..))表述正确的是()
A、(..)方法中只能有两个参数
B、第一个*:任意访问权限修饰符
C、第三个*:类下的任意方法
D、第二个*:前面包名下的任意类
你的答案:BCD正确答案:BCD
【答案解析】
(..)表示任意参数。
8、(2分)在pom.xml中,哪些元素是必须的?(多选)
A、webapp
B、version
C、artifactId
D、groupId
你的答案:BCD正确答案:BCD
【答案解析】
在pom.xml中,groupId、artifactId和version是必须的元素,用于定义Maven项目的唯一标识。dependencies元素用于定义项目依赖,是可选的元素。