Spring MVC框架四:RestFul风格

it2025-09-15  4

概念

Restful就是一个资源定位及资源操作的风格。不是标准也不是协议,只是一种风格。基于这个风格设计的软件可以更简洁,更有层次,更易于实现缓存等机制。

功能

资源:互联网所有的事物都可以被抽象为资源 资源操作:使用POST、DELETE、PUT、GET,使用不同方法对资源进行操作。 分别对应 添加、 删除、修改、查询。

传统方式操作资源

通过不同的参数来实现不同的效果!方法单一,post 和 get

http://127.0.0.1/item/queryItem.action?id=1 查询,GET http://127.0.0.1/item/saveItem.action 新增,POST http://127.0.0.1/item/updateItem.action 更新,POST http://127.0.0.1/item/deleteItem.action?id=1 删除,GET或POST

使用RESTful操作资源 :可以通过不同的请求方式来实现不同的效果!如下:请求地址一样,但是功能可以不同!

http://127.0.0.1/item/1 查询,GET http://127.0.0.1/item 新增,POST http://127.0.0.1/item 更新,PUT http://127.0.0.1/item/1 删除,DELETE

代码演示

先按照链接里的步骤配置 利用注解创建MVC项目 创建完新建一个类

package com.www.controller; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestMapping; @Controller public class RestFulController { //映射访问路径 @RequestMapping("/commit/{a}/{b}") public String index(@PathVariable int a, @PathVariable int b, Model model){ int result = a + b; //Spring MVC会自动实例化一个Model对象用于向视图中传值 model.addAttribute("msg","结果为:" + result); //返回视图结果 return "test"; } }

结果:

思考:使用路径变量的好处?

使路径变得更加简洁获得参数更加方便,框架会自动进行类型转换通过路径变量的类型可以约束访问参数,如果类型不一样,则访问不到对应的请求方法,如这里访问是的路径是/commit/1/a,则路径与方法不匹配,而不会是参数转换失败

修改参数类型测试

package com.www.controller; import org.springframework.stereotype.Controller; import org.springframework.ui.Model; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestMapping; @Controller public class RestFulController { @RequestMapping("/commit1/{a}/{b}") public String index1(@PathVariable int a,@PathVariable String b,Model model){ String result = a + b; model.addAttribute("msg","结果为:" + result); return "test"; } }

结果:

最新回复(0)