SpringMVC面试题
- 1、SpringMVC的理解
- 2、SpringMVC的工作流程
- 3、SpringMVC的常用注解
- 4、SpringMVC的九大内置组件
- 5、Spring、SpringMVC、SpringBoot的区别
1、SpringMVC的理解
2、SpringMVC的工作流程
3、SpringMVC的常用注解
- @RequestMapping: 用于处理请求url映射的注解,可用于类或方法上,用于类上,则表示类中的所有响应请求的方法都是以该地址作为父路径。
- @RequestBody: 注解实现接收http请求的json数据,将json转换为java对象
- @ResponseBody: 注解实现将conreoller方法返回对象转化为json对象响应给客户
4、SpringMVC的九大内置组件
- HandlerMapping
- 根据request请求找到相应的处理器。因为Handler (Controller) 有两种形式,一种是基于类的Handler,另一种是基于Method的Handler (也就是我们常用的)。
- HandlerAdapter
- 调用Handler的适配器。如果把Handler (Controller) 当做工具的话,那么HandlerAdapter就相当于干活的工人。
- HandlerExceptionResolver
- 对异常的处理
- ViewResolver
- 用来将String类型的视图名和Locale解析为View类型的视图
- RequestToViewNameTranslator
- 有的Handler (Controller) 处理完后没有设置返回类型,比如是void方法,这是就需要从request请求中获取viewName
- LocaleResolver
- 从request中解析出Locale。Locale表示一个区域,比如zh-cn,对不同的区域的用户,显示不同的结果,这就是i18n (SpringMVC中有具体的拦截器LocaleChangelnterceptor)
- ThemeResolver
- 主题解析,这种类似于我们手机更换主题,不同的U1,css等
- MultipartResolver
- 处理上传请求,将普通的request封装成MultipartHttpServletRequest
- FlashMapManager
- 用于管理FlashMap,FlashMap用于在redirect重定向中传递参数
5、Spring、SpringMVC、SpringBoot的区别
- SpringMVC和Spring:
- Spring是一个一站式的轻量级的java开发框架,核心是控制反转(IOC)和面向切面(AOP),针对于开发的WEB层(SpringMVC)、业务层(IOC)、持久层(JDBCTemplate)等都提供了多种配置解决方案。
- SpringMVC是Spring基础之上的一个MVC框架,主要处理web开发的路径映射和视图渲染,属于Spring框架中WEB层开发的一部分。
- SpringMVC和SpringBoot
- SpringMVC属于一个企业WEB开发的MVC框架,涵盖面包括前端视图开发、文件配置、后台接口逻辑开发等,XML、config等配置相对比较繁琐复杂;
- SpringBoot框架相对于SpringMVC框架来说,更专注于开发微服务后台接口,不开发前端视图,同时遵循默认优于配置,简化了插件配置流程,不需要配置xml,相对SpringMVC,大大简化了配置流程;
更多推荐
【SpringMVC】SpringMVC面试题总结
发布评论