Spring MVC框架四:RestFul风格
程序员文章站
2024-03-25 19:29:58
...
概念
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";
}
}
结果:
上一篇: opencv-特征描述符评估
下一篇: Beego安装错误解决(mac)
推荐阅读
-
Spring MVC框架四:RestFul风格
-
Spring MVC的RESTful风格请求
-
Spring MVC开发RESTful风格的URI
-
spring mvc完成restful风格的url
-
Spring MVC--RestFul风格
-
spring mvc mybatis实现restful风格框架
-
Spring AOP 中 advice 的四种类型 before after throwing advice around 博客分类: Spring框架
-
SpringMVC源码总结(二)mvc:annotation 博客分类: Spring框架
-
SpringMVC源码总结(二)mvc:annotation 博客分类: Spring框架
-
【开发笔记】Spring MVC框架升级错误:找不到ReflectionUtils.doWithLocalFields方法