码迷,mamicode.com
首页 > 其他好文 > 详细

Restful风格

时间:2020-01-01 16:57:28      阅读:86      评论:0      收藏:0      [点我收藏+]

标签:数据   mapping   分离   img   形参   接收参数   png   提交   一个   

概念

 

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

功能  (前后端分离)
资源:互联网所有的事物都可以被抽象为资源
资源操作:使用POST、DELETE、PUT、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

需求
RESTful方式实现商品信息查询,返回json数据

取参
使用RESTful风格开发的接口,根据id查询商品,接口地址是:
http://127.0.0.1/item/1
我们需要从url上获取商品id,步骤如下:
1.使用注解@RequestMapping(“item/{id}”)声明请求的url
{xxx}叫做占位符,请求的URL可以是“item /1”或“item/2”

2.使用(@PathVariable() Integer id)获取url上的数据

/**
* 使用RESTful风格开发接口,实现根据id查询商品
*
* @param id
* @return
*/
@RequestMapping("item/{id}")
@ResponseBody
public Item queryItemById(@PathVariable() Integer id) {
Item item = this.itemService.queryItemById(id);
return item;
}

如果@RequestMapping中表示为”item/{id}”,id和形参名称一致,@PathVariable不用指定名称。如果不一致,例如”item/{ItemId}”则需要指定名称@PathVariable(“itemId”)。

http://127.0.0.1/item/123?id=1
注意两个区别
1.@PathVariable是获取url上数据的。@RequestParam获取请求参数的(包括post表单提交)

2.如果加上@ResponseBody注解,就不会走视图解析器,不会返回页面,目前返回的json数据。如果不加,就走视图解析器,返回页面

 

技术图片

 

 

 

 

添加商品

技术图片

 

 

 技术图片

 

 

补充  :

技术图片

 

第一个用了restful , 

第二个没有

第一个

技术图片

 

 接收参数的时候就要要路径上的变量这个注解 !

第二个

技术图片

 

 没有用restful , 就要用请求参数这个注解

 

 

 

 

 部分引自

https://blog.csdn.net/uniqueweimeijun/article/details/79514738

Restful风格

标签:数据   mapping   分离   img   形参   接收参数   png   提交   一个   

原文地址:https://www.cnblogs.com/acer6/p/12129057.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!