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返回的是模板页面。

相关推荐
llwszx3 小时前
深入理解Java锁原理(一):偏向锁的设计原理与性能优化
java·spring··偏向锁
云泽野3 小时前
【Java|集合类】list遍历的6种方式
java·python·list
二进制person4 小时前
Java SE--方法的使用
java·开发语言·算法
小阳拱白菜5 小时前
java异常学习
java
程序员岳焱6 小时前
Java 与 MySQL 性能优化:Java 实现百万数据分批次插入的最佳实践
后端·mysql·性能优化
FrankYoou6 小时前
Jenkins 与 GitLab CI/CD 的核心对比
java·docker
麦兜*6 小时前
Spring Boot启动优化7板斧(延迟初始化、组件扫描精准打击、JVM参数调优):砍掉70%启动时间的魔鬼实践
java·jvm·spring boot·后端·spring·spring cloud·系统架构
KK溜了溜了7 小时前
JAVA-springboot 整合Redis
java·spring boot·redis
大只鹅7 小时前
解决 Spring Boot 对 Elasticsearch 字段没有小驼峰映射的问题
spring boot·后端·elasticsearch
ai小鬼头7 小时前
AIStarter如何快速部署Stable Diffusion?**新手也能轻松上手的AI绘图
前端·后端·github