026--SpringMVC核心组件+面试题

VIP免费
2024-12-11 1 0 108.13KB 12 页 5.9玖币
侵权投诉
Spring MVC 核心组件 + 面试题
Spring MVC 介绍
Spring MVCSpring Web MVC )是 Spring Framework 提供的 Web 组件,它的实现基于
MVC 的设计模式:Controller(控制层)、Model(模型层)、View(视图层),提供了
前端路由映射、视图解析等功能,让 Java Web 开发变得更加简单,也属于 Java 开发中必
须要掌握的热门框架。
执行流程
Spring MVC 的执行流程如下:
1. 客户端发送请求至前端控制器(DispatcherServlet
2. 前端控制器根据请求路径,进入对应的处理器
3. 处理器调用相应的业务方法
4. 处理器获取到相应的业务数据
5. 处理器把组装好的数据交还给前端控制器
6. 前端控制器将获取的 ModelAndView 对象传给视图解析器(ViewResolver
7. 前端控制器获取到解析好的页面数据
8. 前端控制器将解析好的页面返回给客户端
流程如下图所示:
1
核心组件
Spring MVC 的核心组件如下列表所示:
1. DispatcherServlet :核心处理器(也叫前端控制器),负责调度其他组件的执行,
可降低不同组件之间的耦合性,是整个 Spring MVC 的核心模块。
2. Handler :处理器,完成具体业务逻辑,相当于 Servlet Action
3. HandlerMapping DispatcherServlet 是通过 HandlerMapping 将请求映射到不同的
Handler
4. HandlerInterceptor :处理器拦截器,是一个接口,如果我们需要做一些拦截处
理,可以来实现这个接口。
5. HandlerExecutionChain :处理器执行链,包括两部分内容,即 Handler
HandlerInterceptor (系统会有一个默认的 HandlerInterceptor,如果需要额外拦截处
理,可以添加拦截器设置)。
6. HandlerAdapter :处理器适配器,Handler 执行业务方法之前,需要进行一系列的
操作包括表单数据的验证、数据类型的转换、将表单数据封装到 POJO 等,这一系列
的操作,都是由 HandlerAdapter 来完成,DispatcherServlet 通过 HandlerAdapter
行不同的 Handler
7. ModelAndView :装载了模型数据和视图信息,作为 Handler 的处理结果,返回给
DispatcherServlet
8. ViewResolver :视图解析器,DispatcherServlet 通过它将逻辑视图解析成物理视
图,最终将渲染结果响应给客户端。
自动类型转换
自动类型转换指的是,Spring MVC 可以将表单中的字段,自动映射到实体类的对应属性
上,请参考以下示例。
1. JSP 页面代码
<%@ page contentType="text/html;charset=UTF-8" language="java" %>
<html>
<body>
<form action="add">
名称:<input type="input" name="name"><br>
年龄:<input type="input" name="age"><br>
<input type="submit" value=" 提交 ">
</form>
</body>
</html>
2. 编写实体类
public class PersonDTO {
private String name;
private int age;
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
}
3. 编写控制器
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@RestController
public class PersonController {
@RequestMapping(value = "/add", produces = "text/plain;charset=utf-8")
public String add(PersonVO person) {
return person.getName() + ":" + person.getAge();
}
}
4. 执行结果
执行结果如下图所示:
2
中文乱码处理
业务的操作过程中可能会出现中文乱码的情况,以下是处理中文乱码的解决方案。
第一步,在 web.xml 添加编码过滤器,配置如下:
<filter>
<filter-name>encodingFilter</filter-name>
<filter-class>org.springframework.web.filter.CharacterEncodingFilter</
filter-class>
<init-param>
<param-name>encoding</param-name>
<param-value>UTF-8</param-value>
摘要:

SpringMVC核心组件+面试题SpringMVC介绍SpringMVC(SpringWebMVC)是SpringFramework提供的Web组件,它的实现基于MVC的设计模式:Controller(控制层)、Model(模型层)、View(视图层),提供了前端路由映射、视图解析等功能,让JavaWeb开发变得更加简单,也属于Java开发中必须要掌握的热门框架。执行流程SpringMVC的执行流程如下:1.客户端发送请求至前端控制器(DispatcherServlet)2.前端控制器根据请求路径,进入对应的处理器3.处理器调用相应的业务方法4.处理器获取到相应的业务数据5.处理器把组装好的...

展开>> 收起<<
026--SpringMVC核心组件+面试题.docx

共12页,预览3页

还剩页未读, 继续阅读

声明:本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。玖贝云文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知玖贝云文库,我们立即给予删除!
分类:计算机 价格:5.9玖币 属性:12 页 大小:108.13KB 格式:DOCX 时间:2024-12-11

开通VIP享超值会员特权

  • 多端同步记录
  • 高速下载文档
  • 免费文档工具
  • 分享文档赚钱
  • 每日登录抽奖
  • 优质衍生服务
/ 12
客服
关注