RESTful简介以及SpringMVC如何实现RESTful风格的编程

本文介绍了RESTful风格的基本概念,对比了传统与RESTful操作资源的区别,并详细阐述了如何利用SpringMVC进行RESTful编程,包括使用@RequestMapping、@PathVariable获取URL数据以及注意事项,强调了使用@ResponseBody注解返回JSON数据的重要性。
摘要由CSDN通过智能技术生成

1  什么是RESTful?

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

2 资源和资源操作

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

2.1 传统操作资源和RESTful操作资源的区别

2.1.1 传统方式操作资源

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

2.1.2 使用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

3 利用SpringMVC完成RESTful风格的编程

使用SpringMVC使用RESTful方式实现商品信息查询,返回json数据
以url地址为http://127.0.0.1/item/1为例,步骤如下

3.1 使用注解@RequestMapping声明请求的url

按照上述示例,注解应该为:@RequestMapping("item/{id}")
{xxx}叫做
占位符,请求的URL可以是“item /1”或“item/2

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

    public Item queryItemById(@PathVariable() Integer id)

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

如下所示:当①和②相同时,那么③中不需要加参数,如果①和②不对应,那么③需要增添一个与①一致的参数

3.3 Controller类方法

	@RequestMapping("item/{itemId}")
	@ResponseBody
	public Items queryItemById(@PathVariable("itemId") Integer id) {
		Items item = this.itemsService.queryItemById(id);
		return item;
	}

 3.4 注意事项

  • @PathVariable是获取url上数据的。@RequestParam获取请求参数的(包括post表单提交)
  • 如果加上@ResponseBody注解,就不会走视图解析器,因此不会返回页面,上述返回的是json数据。如果不加,就走视图解析器,返回页面
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值