首页 > 其他分享 >@Controller和@RestController的区别

@Controller和@RestController的区别

时间:2023-10-24 15:35:43浏览次数:33  
标签:返回 RestController 区别 JSON ResponseBody Controller 注解

总体上,@Controller和@RestController都是Spring MVC框架中的注解,用于标识一个类是Spring MVC controller处理器,可以接收HTTP请求。但它们在处理请求和返回结果方面存在一些不同。

  1. 返回类型:
  • @Controller:如果使用@Controller注解,那么类中的方法可以直接通过返回String跳转到jsp、ftl、html等模版页面。如果在方法上加上@ResponseBody注解,也可以返回实体对象。
  • @RestController:在@RestController中,控制器中的方法只能返回json格式的数据。
  1. 功能:
  • @Controller:除了可以返回指定页面,配合视图解析器InternalResourceViewResolver使用,还可以返回自定义的媒体类型。
  • @RestController:它是@Controller和@ResponseBody的结合体,用于简化返回JSON数据的情况。

总结来说,@Controller功能更全面,而@RestController更专精于处理和返回JSON数据。因此,需要根据具体需求选择使用哪种注解。

标签:返回,RestController,区别,JSON,ResponseBody,Controller,注解
From: https://www.cnblogs.com/xiaoovo/p/17784908.html

相关文章

  • 好好回答下 TCP 和 UDP 的区别!
    写了这么多篇关于TCP和UDP的文章,还没有好好聊过这两个协议的区别,这篇文章我们就来开诚布公的谈一谈。关于TCP和UDP,想必大家都看过一张这样的图。有一个小姑娘在对着瓶口慢慢的喝水,下面写着可靠的传输,少女的衣服没有被水浸湿,这张图被称为TCP。然后又有一个小姑娘在举着水......
  • 深入解析i++和++i的区别及性能影响
    在我们编写代码时,经常需要对变量进行自增操作。这种情况下,我们通常会用到两种常见的操作符:i++和++i。最近在阅读博客时,我偶然看到了有关i++和++i性能的讨论。之前我一直在使用它们,但从未从性能的角度考虑过,这让我突然产生了兴趣。尽管它们看起来相似,但它们之间存在微妙而重要的区别......
  • y电容和高压瓷片电容区别对比
    多外观上来看,Y电容和高压瓷片电容非常像,有人甚至这样认为,所谓的Y电容,也就是多了个认证的瓷片电容,事实上真的是这样的吗?Y电容和瓷片电容有区别吗?到底有哪些区别?今天KYET小编就来为大家详细讲解一下。Y电容确实也属于高压瓷片电容:y电容也就是常见的安规电容器的一种,也可以叫做安......
  • 频谱仪的内部衰减和外接衰减器有何区别?对底噪和测试结果有什么影响?
    内部衰减器是指Amplitude菜单的Attenuation,貌似这个值越大频谱仪的底噪越大,那外接衰减器呢?频谱分析仪显示的信号是叠加在平均噪声电平上,这个噪声是由频谱仪自身产生的,大部分来自中频放大器的第一级,它是宽带白噪声,经过中频滤波器后送到包络检波器的平均噪声功率,当输入衰减增加时,降......
  • strcpy、strncpy、memcpy 区别与实现
    strcpy、strncpy、memcpy的区别strcpy描述将一个字符串复制到另一个字符串中实现char*myStrcpy(char*dest,constchar*src){if((NULL==dest)||(NULL==src)){returnNULL;}char*strDest=dest;constchar*strSrc=src;......
  • laravel:中间件给controller传递参数(10.27.0)
    一,相关文档https://learnku.com/docs/laravel/10.x/middleware/14846二,php代码1,middleware12345678910111213141516171819202122232425<?php namespaceApp\Http\Middleware; useClosure;useIlluminate\Http\Request;useS......
  • SWD与JTAG区别及使用情况 最新更新时间
      上图是SEGGER说明书中给出的Jlink引脚图,可以对照着看SWD引脚与JTAG引脚的关系。 这是我手边开发板上的JTAG连接图,这个肯定是能用的。  这个是从网上找来的标准的JTAG连接图,供对照参考。  调试方式既可以用JTAG,也可以用SWD。 以下是一段转自:(http://showvi.c......
  • CSRF和SSRF有什么区别?网络安全入门
    CSRF和SSRF有什么区别?网络安全入门现在是万物互联时代,一切都是信息化的,会涉及到个人隐私信息,一些不法分子可能会利用一些手段获取我们的信息,信息泄露出去便会有危险,因此就诞生了网络安全工程师这个岗位,近几年它的需求量也很大,那CSRF和SSRF有什么区别呢?请看下文:CSRF:说到CSRF,就不得......
  • Adobe“大师版”和“SP版”的含义和区别,如何选择?
    首先要说明的是大师版和SP版,它们所包含的软件版本和功能完全相同,只是封装的方式不同,安装方法也相同,都是一键式安装,不需要激活,永久使用。要说不同,那就是大师版“体积大(以2022Winx64大师版为例:大小约为26G)”,SP版“体积小”。相对来说,SP版更新更快、更全一些,大师版更新慢些。什么是......
  • CyclicBarrier和CountDownLatch有什么区别?Semaphore(信号量)了解吗?
    一、CyclicBarrier和CountDownLatch有什么区别?两者最核心的区别:CountDownLatch是一次性的,而CyclicBarrier则可以多次设置屏障,实现重复利用;CountDownLatch中的各个子线程不可以等待其他线程,只能完成自己的任务;而CyclicBarrier中的各个线程可以等待其他线程二、Semaphore(信号量)Sema......