栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

RESTful开发风格4:RESTful基本使用二:【@RestController注解】;【路径变量(uri中的变量)】(使用@PathVariable注解来获取路径变量值);

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

RESTful开发风格4:RESTful基本使用二:【@RestController注解】;【路径变量(uri中的变量)】(使用@PathVariable注解来获取路径变量值);

说明:

(1)上篇博客【RESTful开发风格3:RESTful基本使用一:客户端是HTML时,Restful演示;】 演示了RESTful的最基本的使用;只不过只是RESTful的最基本使用还不够,其还存在一些问题。本篇博客就是来解决三个问题的其中两个:

          ● 【@RestController注解】:简化@ResponseBody注解的使用方式;

          ● 【路径变量】:使用【{} + @PathVariable注解】的方式,获取uri中的参数;

目录

一:【@RestController注解】; 

二:路径变量(uri中的变量);


一:【@RestController注解】; 

问题:【为了满足RESTful开发风格】→【方法需要完成的是返回字符串,而不是页面的跳转】→所以,【方法上需要添加@ResponseBody注解】:这有点麻烦;

解决策略:为了【为了满足RESTful开发风格】→【同时,不再在每个方法上都使用@ResponseBody注解】→@RestController注解应运而生;


二:路径变量(uri中的变量);

路径变量是什么: 

          ● 在【RESTful开发风格1:RESTful开发风格初体验一:RESTful开发风格简介;】中介绍过,如【 POST  /article/1】这样的uri的意思是【创建一个id=1的文章】;

而这种情况,id这个参数,没有按以前熟悉的【 POST  /article?id=1】方式;而是把这个参数放在了uri中;

          ● 像这种放在uri中的变量,就称之为路径变量;即,id=1这个变量不是请求参数,它是uri的一部分;

          ● 自然【 POST  /article/1】在性质上和【 POST  /article?id=1】一样;只是【 POST  /article/1】是路径变量的形式,【 POST  /article?id=1】是请求参数的形式;(起码目前,自己可以这样理解)

……………………………………………………

          ● 路径变量说白了就是【在uri中的,可变的一个值】;然后在RESTful中,路径变量一般就是id值;

【 POST  /article?id=1】这种请求参数的形式中,我们获取id的值是比较容易的;

但是,【 POST  /article/1】这种路径变量的形式,我们如何获取其中的id变量值嘞?:为此,Spring MVC提供了路径变量的支持;

获取路径变量:比如我们要获取如【/restful/request/100】中的路径变量的值100;那么就可以:首先,在@PostMapping注解的url中,添加{一个变量名}(这个名字可以随便取);然后,在方法的参数中,使用@PathVariable注解,来接收这个变量值;

说明:@RequestParam 和 @PathVariable 都是 springMVC的注解,都用于接收请求中的参数,@RequestParam 是从request里面直接拿取值,而 @PathVariable 则是从一个URI模板里面来填充,也就是RESTful风格。

启动Tomcat,观察效果:

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/462778.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号