还剩12页未读,继续阅读
本资源只提供10页预览,全部文档请下载后查看!喜欢就下载吧,查找使用更方便
文本内容:
ssm面试题及答案
一、单项选择题(共30题,每题1分)(注每题只有一个正确答案,将正确选项的字母填在括号中)
1.Spring IoC容器初始化时,默认采用的Bean实例化方式是?()A.构造器实例化B.工厂方法实例化C.静态工厂实例化D.实例工厂实例化
2.以下不属于Spring AOP核心组件的是?()A.Target(目标对象)B.Joinpoint(连接点)C.ProxyFactory(代理工厂)D.Aspect(切面)
3.Spring事务管理中,默认的事务传播行为是?()A.REQUIRES_NEWB.SUPPORTSC.REQUIREDD.MANDATORY
4.SpringMVC中,用于将请求参数绑定到Controller方法参数的注解是?()A.@ControllerB.@ServiceC.@RequestMappingD.@RequestParam
5.MyBatis中,#{}和${}的主要区别是?()第1页共14页A.执行效率不同B.作用范围不同C.是否进行SQL注入防护D.支持的数据类型不同
6.以下关于Spring Bean作用域的说法,错误的是?()A.singleton作用域在容器启动时创建,全局唯一B.prototype作用域每次获取Bean都会创建新实例C.request作用域在一次HTTP请求内有效D.session作用域在一次数据库会话内有效
7.Spring AOP中,用于定义切入点的注解是?()A.@PointcutB.@AfterReturningC.@AroundD.@Aspect
8.SpringMVC的核心控制器是?()A.DispatcherServletB.HandlerMappingC.HandlerAdapterD.ViewResolver
9.MyBatis中,用于配置全局属性(如驼峰命名转换)的配置文件位置是?()A.mybatis-config.xml的标签B.映射文件的标签C.实体类的注解D.数据库连接配置文件第2页共14页
10.以下哪种方式可以让Spring自动扫描并注册Bean?()A.在XML中通过标签手动配置B.使用@Autowired注解注入C.使用@ComponentScan注解指定扫描包路径D.通过new关键字直接实例化
11.Spring事务中,当出现运行时异常(RuntimeException)时,默认情况下事务会?()A.不回滚B.部分回滚C.完全回滚D.不确定
12.SpringMVC中,用于处理异步请求的注解是?()A.@AsyncB.@ResponseBodyC.@RequestBodyD.@RestController
13.MyBatis中,以下哪个标签用于实现动态SQL中的条件判断?()A.B.C.D.
14.Spring中,用于将一个Bean注入到另一个Bean的属性中的注解是?()A.@Component第3页共14页B.@AutowiredC.@ServiceD.@Repository
15.SpringMVC的请求流程中,第一步是?()A.处理器适配器执行处理器B.前端控制器接收请求C.视图解析器渲染视图D.处理器映射器查找处理器
16.MyBatis中,一级缓存和二级缓存的默认状态是?()A.一级缓存关闭,二级缓存开启B.一级缓存开启,二级缓存关闭C.两者都关闭D.两者都开启
17.以下关于Spring IoC的说法,正确的是?()A.IoC是将对象的创建和依赖管理交给外部容器B.IoC的实现依赖于Java的继承特性C.IoC只能通过XML配置实现D.IoC会降低代码的可测试性
18.Spring AOP中,@Before、@After、@AfterReturning、@AfterThrowing、@Around这五种通知类型的执行顺序是?()A.@Before-@After-@AfterReturning-@AfterThrowing-@AroundB.@Before-@Around-@AfterReturning-@AfterThrowing-@After第4页共14页C.@Around-@Before-@AfterReturning-@AfterThrowing-@AfterD.@Before-@Around-@AfterThrowing-@AfterReturning-@After
19.SpringMVC中,@RequestMapping注解可以标注在哪个位置?()A.仅类上B.仅方法上C.类和方法上均可以D.仅Service层
20.MyBatis中,当需要批量插入数据时,常用的标签是?()A.B.C.D.
21.Spring中,Bean的生命周期中,初始化前执行的方法是?()A.@PostConstructB.实现InitializingBean接口的afterPropertiesSetC.自定义init-methodD.@PreDestroy
22.SpringMVC中,拦截器(Interceptor)和过滤器(Filter)的区别是?()A.拦截器是Spring框架特有的,过滤器是Servlet规范中的B.拦截器只能拦截Controller请求,过滤器可以拦截所有请求C.两者的执行顺序不同(过滤器先执行,拦截器后执行)第5页共14页D.以上都是
23.MyBatis中,使用#{}进行参数绑定后,生成的SQL语句中该参数会被替换为?()A.原始参数值,无引号B.原始参数值,带单引号C.占位符“”D.不替换,直接拼接
24.以下哪个是SpringMVC的视图解析器实现类?()A.InternalResourceViewResolverB.FreeMarkerViewResolverC.ThymeleafViewResolverD.以上都是
25.Spring事务中,只读事务(readOnly=true)适用于什么场景?()A.频繁修改数据的场景B.仅查询数据的场景C.涉及多张表的事务D.高并发的事务
26.MyBatis中,当使用注解开发时,用于指定SQL语句的注解是?()A.@SelectB.@ResultC.@MapperD.@Param
27.Spring中,@Scope注解的默认作用域是?()第6页共14页A.singletonB.prototypeC.requestD.session
28.SpringMVC中,@RestController注解相当于哪两个注解的组合?()A.@Controller+@ResponseBodyB.@Service+@ResponseBodyC.@Component+@ResponseBodyD.@Repository+@ResponseBody
29.MyBatis中,用于配置别名的标签是?()A.B.C.D.
30.以下关于SSM整合的说法,正确的是?()A.需要分别配置Spring、SpringMVC、MyBatis的配置文件B.SpringMVC的DispatcherServlet需要在web.xml中配置C.MyBatis的SqlSessionFactory需要注入Spring容器D.以上都正确
二、多项选择题(共20题,每题2分)(注每题有多个正确答案,将正确选项的字母填在括号中,多选、少选、错选均不得分)
1.以下属于Spring核心功能的有?()A.IoC(控制反转)第7页共14页B.AOP(面向切面编程)C.事务管理D.ORM框架
2.Spring AOP的应用场景有?()A.日志记录B.事务管理C.权限控制D.性能监控
3.Spring Bean的作用域包括?()A.singletonB.prototypeC.requestD.session
4.Spring事务的ACID特性包括?()A.原子性(Atomicity)B.一致性(Consistency)C.隔离性(Isolation)D.持久性(Durability)
5.SpringMVC的请求处理流程中涉及的组件有?()A.DispatcherServletB.HandlerMappingC.HandlerAdapterD.ViewResolver
6.MyBatis的核心组件包括?()A.SqlSessionFactory第8页共14页B.SqlSessionC.Mapper接口D.映射文件(.xml)
7.MyBatis中,#{}和${}的使用场景区别是?()A.#{}适用于参数值作为条件值(如where id=#{id})B.${}适用于参数值作为SQL片段(如order by${column})C.对于敏感字段(如密码),#{}更安全D.对于表名参数,${}更适用
8.Spring中,依赖注入的方式有?()A.构造器注入B.Setter方法注入C.字段注入D.接口注入
9.SpringMVC中,用于接收请求参数的方式有?()A.使用@RequestParam注解B.直接使用方法参数名匹配请求参数名C.使用@RequestBody接收JSON数据D.使用Model/ModelMap存储参数
10.MyBatis中,动态SQL的标签包括?()A.B.C.D.
11.Spring AOP中,切入点表达式的作用是?()A.定义哪些方法需要被增强第9页共14页B.定义通知何时执行C.定义切面的优先级D.定义目标对象
12.Spring事务的隔离级别包括?()A.ISOLATION_DEFAULTB.ISOLATION_READ_UNCOMMITTEDC.ISOLATION_READ_COMMITTEDD.ISOLATION_REPEATABLE_READE.ISOLATION_SERIALIZABLE
13.SpringMVC的拦截器(Interceptor)可以实现的功能有?()A.请求预处理B.请求后处理C.异常处理D.日志记录
14.MyBatis中,resultType和resultMap的区别是?()A.resultType用于简单类型或JavaBean,无需额外配置B.resultMap用于复杂类型(如关联查询),可自定义映射规则C.对于一对一关联查询,必须使用resultMapD.resultType的优先级高于resultMap
15.Spring中,@Component注解的衍生注解有?()A.@ControllerB.@ServiceC.@RepositoryD.@Bean
16.SpringMVC中,异常处理的方式有?()第10页共14页A.使用@ExceptionHandler注解B.实现HandlerExceptionResolver接口C.在web.xml中配置错误页面D.使用全局异常处理器
17.MyBatis中,一级缓存和二级缓存的区别是?()A.一级缓存是SqlSession级别的,二级缓存是SqlSessionFactory级别的B.一级缓存默认开启,二级缓存默认关闭(需手动配置)C.二级缓存支持分布式环境D.一级缓存会在SqlSession关闭后失效
18.Spring整合MyBatis时,需要配置的组件有?()A.DataSourceB.SqlSessionFactoryC.SqlSessionTemplateD.MapperScannerConfigurer
19.SpringMVC中,@RequestMapping注解的属性包括?()A.valueB.methodC.paramsD.headers
20.MyBatis中,分页查询的实现方式有?()A.使用数据库自带分页(如MySQL的LIMIT)B.使用PageHelper插件C.通过RowBounds实现D.通过拦截器自定义分页第11页共14页
三、判断题(共20题,每题1分)(注对的打“√”,错的打“×”)
1.Spring IoC容器初始化时,会先执行Bean的构造方法,再执行@Autowired注入()
2.Spring AOP的代理方式只能是JDK动态代理()
3.Spring事务默认是基于AOP实现的()
4.SpringMVC中,@RequestMapping注解的method属性可以指定请求方法(GET/POST等)()
5.MyBatis中,#{}会被解析为占位符“”,${}会直接拼接参数值()
6.Spring Bean的作用域中,request作用域在一个会话内有效()
7.Spring AOP的切面(Aspect)是由切入点(Pointcut)和通知(Advice)组成的()
8.SpringMVC的HandlerMapping负责将请求映射到具体的Controller方法()
9.MyBatis的映射文件中,标签的id属性默认与Mapper接口方法名一致()
10.Spring中,@Autowired注解默认是按类型注入,如果存在多个同类型Bean,会按名称注入()
11.Spring事务中,当设置propagation=REQUIRES_NEW时,嵌套事务会创建新的事务()
12.SpringMVC的@ResponseBody注解用于将方法返回值直接写入HTTP响应体()
13.MyBatis的一级缓存是本地缓存,二级缓存是分布式缓存()第12页共14页
14.Spring中,@ComponentScan注解的basePackages属性用于指定要扫描的包路径()
15.SpringMVC的拦截器只能在XML中配置,不能通过注解配置()
16.MyBatis中,使用标签时,collection属性必须指定为List类型()
17.Spring事务中,只读事务(readOnly=true)会关闭事务的自动回滚功能()
18.Spring整合MyBatis时,必须使用SqlSessionTemplate代替SqlSession()
19.MyBatis的resultMap标签中的标签用于映射主键字段()
20.SpringMVC的@RestController注解是Spring
4.0之后引入的新注解()
四、简答题(共2题,每题5分)
1.请简述Spring IoC(控制反转)和DI(依赖注入)的概念及关系
2.请描述SpringMVC的完整请求处理流程附参考答案
一、单项选择题1-5AAADC6-10DAADC11-15CAACA16-20BACCC21-25BDCAB26-30:AAADC
二、多项选择题1-5ABC6-10ABCD11-15AB16-20ABCD21-25A26-30ABCD
三、判断题第13页共14页1-5√×√√√6-10×√√×√11-15√√×√×16-20××√√√
四、简答题Spring IoC(控制反转)将对象的创建权、依赖关系管理交给Spring容器,实现对象间解耦;DI(依赖注入)IoC的实现方式,通过构造器、Setter或字段注入的方式,将依赖对象动态注入到目标对象中关系IoC是设计思想,DI是实现手段,两者共同实现“容器管理对象,依赖自动注入”,提升代码灵活性和可维护性SpringMVC请求处理流程
①客户端发送请求至DispatcherServlet;
②DispatcherServlet通过HandlerMapping查找对应的处理器(Controller方法);
③DispatcherServlet通过HandlerAdapter适配并执行处理器;
④处理器执行后返回ModelAndView对象;
⑤DispatcherServlet通过ViewResolver解析视图;
⑥视图渲染数据并返回给客户端(注答案均基于SSM框架标准知识,结合实际开发经验整理,可直接作为面试复习参考资料)第14页共14页。
个人认证
优秀文档
获得点赞 0