Springboot日常总结-@RestController和@Controller的区别

@RestController和 @Controlle是两种不同的控制器实现,它们的主要区别在于如何处理返回的数据和是否支持跳转到视图页面。

  1. Controller 是一个基本的控制器注解,它允许你将一个类标记为一个Spring MVC控制器处理器。使用 Controller 的类中的方法可以直接返回一个字符串,这通常意味着返回的是一个模板页面,如JSP、FTL或HTML。为了返回这些模板页面,通常需要配合视图解析器来返回到指定的页面。
  2. RestController 是 Controller 和 ResponseBody 注解的结合体,它提供了一种更简洁的方式来处理返回的JSON数据。使用 RestController 的类中的方法只能返回字符串、对象或JSON等实体对象,而不能跳转到模板页面。这是因为 RestController 默认使用@ResponseBody 注解,它与 @Controller 注解结合,使得所有方法都以JSON格式返回数据。

总结来说,@RestController返回的是json格式的数据,而@Controller返回的是模板页面。

相关推荐
神奇小汤圆几秒前
Java 万字长文:从零基础到高级应用的完整教程——把面向对象讲透
后端
云烟成雨TD1 分钟前
Micrometer 系列【42】链路追踪:Span 体系 | 核心 API
java·链路追踪·micrometer
孓最求完美3 分钟前
实战经验:JT808/JT809 车联网高并发服务端性能优化指南
后端
shengjk16 分钟前
深度拆解:从 LC-3 汇编到 Java/Rust,数组越界与硬件中断的底层真相
后端
Gorway8 分钟前
理解 Spring 依赖注入:从构造器注入到集合与条件 Bean
java·后端
颜进强18 分钟前
Claude Code - 26 效率三件套:cc-switch 切模型 · codeburn 算成本 · claude-hud 看状态
前端·后端·ai编程
LiLiYuan.24 分钟前
【字符串常量池】
java·开发语言·面试
Sylvia33.30 分钟前
从轮询到推送:足球数据API架构演进与火星数据技术拆解
java·服务器·网络·python·websocket·架构
cfm_29141 小时前
高并发系统缓存全解
java·缓存