MVC设计不仅限于 Java Web 应用,还包括许多应用,比如前端、PHP、.NET 等语言。之所以那么做的根本原因在于各个模块的解耦。Spring MVC 实现了即用的 MVC 的核心概念。它为控制器和处理程序提供了大量与此模式相关的功能。并且当向 MVC 添加反转控制(Inversion of Control,IoC)时,它使应用程序高度解耦,提供了通过简单的配置更改即可动态更改组件的灵活性。
Spring MVC开发步骤:
- 导入SpringMVC相关坐标
- 配置SpringMVC核心控制器DispathcerServlet
- 创建Controller类和视图页面
- 使用注解配置Controller类中业务方法的映射地址
- 配置SpringMVC核心文件 spring-mvc.xml
- 客户端发起请求测试
Spring MVC有@Controller、@RequestMapping、@RequestBody、@ResponseBody、@RequestParam、@PathVariable、@ModelAttribute、@RestController八种注解。
@RequestMapping是一个用来处理请求地址映射的注解,可用于类或方法上。用于类上,表示类中的所有响应请求的方法都是以该地址作为父路径,作用于方法上,表明该处理器的请求地址=父路径+方法 上url。其拥有6个属性(如图所示):
@Controller 用于标记在一个类上,使用它标记的类就是一个SpringMVC Controller 对象。通过Spring 配置的注解扫描,将这个bean注册到Spring MVC容器中。
@RequestBody用于读取Request请求的body部分数据,使用系统默认配置的 HttpMessageConverter 进行解析,然后把相应的数据绑定 到要返回的对象上 ,再把 HttpMessageConverter返回的对象数据绑定到 controller中方法的参数上。 现在更多的是把一个 json 字符串转换成一个定义好映射关系的对象。
这些是Spring MVC的一些概括,Spring MVC还有许多可以学习的知识,也非常的有趣。