栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

JavaEE面试题(二):SpringMVC

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

JavaEE面试题(二):SpringMVC

开篇介绍

大家好,我是Java最全面试题库的提裤姐,今天这篇是JavaEE面试题系列的第二篇,主要总结了SpringMVC相关的问题,在后续,会沿着第一篇开篇的知识线路一直总结下去,做到日更!如果我能做到百日百更,希望你也可以跟着百日百刷,一百天养成一个好习惯。

什么是Spring MVC?

Spring MVC是一个基于Java的实现了MVC设计模式的请求驱动类型的轻量级Web框架,通过把Model,View,Controller分离,将web层进行职责解耦,把复杂的web应用分成逻辑清晰的几部分,简化开发,减少出错,方便组内开发人员之间的配合。

SpringMVC 的工作原理?

①用户向服务器发送请求,请求被 springMVC 前端控制器 DispatchServlet 捕获;
②DispatcherServle 对请求 URL 进行解析,得到请求资源标识符(URL),然后根据该 URL 调用 HandlerMapping,将请求映射到处理器 HandlerExcutionChain;
③DispatchServlet 根据获得 Handler 选择一个合适的 HandlerAdapter 适配器处理;
④Handler 对数据处理完成以后将返回一个 ModelAndView()对象给 DisPatchServlet;
⑤Handler 返回的 ModelAndView()只是一个逻辑视图并不是一个正式的视图,DispatcherSevlet 通过
ViewResolver 试图解析器将逻辑视图转化为真正的视图 View;
⑥DispatcherServle 通过 model 解析出 ModelAndView()中的参数进行解析最终展现出完整的 view 并返回给客户端;

说说Spring MVC的重要组件?

1.前端控制器 DispatcherServlet
作用:接收请求、响应结果,相当于转发器,有了DispatcherServlet 就减少了其它组件之间的耦合度。
2.处理器映射器HandlerMapping
作用:根据请求的URL来查找Handler
3.处理器适配器HandlerAdapter
注意:在编写Handler的时候要按照HandlerAdapter要求的规则去编写,这样适配器HandlerAdapter才可以正确的去执行Handler。
4.处理器Handler
5.视图解析器 ViewResolver
作用:进行视图的解析,根据视图逻辑名解析成真正的视图(view)
6.视图View
View是一个接口, 它的实现类支持不同的视图类型(jsp,freemarker,pdf等等)

SpringMVC 常用注解都有哪些?
  • @requestMapping 用于请求 url 映射。
  • @RequestBody 注解实现接收 http 请求的 json 数据,将 json 数据转换为 java 对象。
  • @ResponseBody 注解实现将 controller 方法返回对象转化为 json 响应给客户。
  • @PathVariable URL 中占位符参数绑定到控制器处理方法的入参中
如何开启注解处理器和适配器?

在 springmvc.xml 中通过开启 来实现注解处理器和适配器的开启。

如何解决 get 和 post 乱码问题?

post 请求乱码:
在 web.xml 里边配置一个 CharacterEncodingFilter 过滤器。 设置为 utf-8。

**get 请求的乱码:**有两种方法。
①修改 tomcat 配置文件添加编码与工程编码一致。
②对参数进行重新编码 String userName = New String(Request.getParameter("userName").getBytes("ISO8859-1"),"utf-8");

SpringMVC怎么样设定重定向和转发的?

1、转发:在返回值前面加"forward:"
2、重定向:在返回值前面加"redirect:"

Spring MVC是如何进行异常处理?

将异常抛给Spring框架,由Spring框架来处理;我们只需要配置简单的异常处理器

Spring MVC的优点?
  • 基于View框架的无缝集成,采用IOC便于测试
  • 典型的纯MVC架构,Struts是不完全基于MVC框架的
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/238499.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号