RestController和Controller,@PathVariable和@RequestParam的区别

举报
小小张自由--张有博 发表于 2022/03/26 11:17:26 2022/03/26
【摘要】 RestController和Controller,@PathVariable和@RequestParam的区别。@RestController注解相当于@ResponseBody加 @Controller合在一起的作用。     RequestParam 汉语意思就是: 请求参数。顾名思义 就是获取参数的 PathVariable 汉语意思是:路径变量。顾名思义,就是要获取一个url

一、RestControllerController的区别

@RestController注解相当于@ResponseBody加 @Controller合在一起的作用

  首先什么是ResponseBody:其实是将java对象转换成json格式的数据

   @responseBody注解的作用是将controller的方法返回的对象通过适当的转换器转换为指定的格式之后,写入到response对象的body区,通常用来返回JSON数据或者是XML数据。

加@ResponseBody

J@Contr011er 
@ResponseBody 
pu c ass estContr011er { 
@RequestMapping( " /hellotest " ) 
public String hello(){ 
return "index" ;

访问localhost:8080/hellotest

 C O local host:8080/hellotest 
Apps Untitled Diagram - 
index

通俗理解:使用Respcontroller注解会将返回的对象,转换为特定的格式,写到Response的body区中。

使用Controller注解返回的对象,会通过视图解析器,寻找指定的页面,找不到是,报错404

二、@PathVariable@RequestParam的区别

     RequestParam 汉语意思就是: 请求参数。顾名思义 就是获取参数的

    PathVariable 汉语意思是:路径变量。顾名思义,就是要获取一个url 地址中的一部分值,

     PathVariable只能用于接收url路径上的参数,而RequestParam只能用于接收请求带的params

    PathVariable一般用于get和delete请求,RequestParam一般用于post请求。

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。