当前位置: 首页 > news >正文

@RestController与@Controller区别

区别1:

@RestController是@Controller的升级版

区别2:

@RestController用于标识一个类作为控制器,并且可以处理HTTP请求。控制器类通常用于接收用户输入并决定返回响应的内容。

@RestController通常用于返回JSON或XML数据

区别3:返回值的处理方式

@Controller可以返回视图名称或模型对象

@RestController将以JSON或XML格式返回数据。这意味着@RestController不会将返回的对象解析为视图,而是直接发送给客户端。

举个栗子:

@Controller
public class HomeController{@RequestMapping("pages")public String home(){//返回index的视图文件(一般为jsp)return "index";}}

HomeController类被标记为一个控制器,并包含一个处理根路径("/")的请求的方法。该方法返回一个视图名称,Spring MVC将对应的视图(jsp)渲染给用户。

访问路径:http://localhost:8080/pages/index.jsp

@RestController
public class UserController{@GetMapping("/users")public List<User> getUsers(){//返回List集合return userRepository.findAll();}}

UserController类被标记为一个REST控制器,并包含一个处理GET请求的方法。该方法返回一个User对象列表,Spring MVC将自动将其转换为JSON(java实体类对象)响应。

 访问路径:http://localhost:8080/users

http://www.lryc.cn/news/514257.html

相关文章:

  • 使用ExecutorService和@Async来使用多线程
  • 计算机网络 (19)扩展的以太网
  • 构造器/构造方法
  • 异常
  • MySQL中distinct和group by去重的区别
  • Qt判别不同平台操作系统调用相应动态库读取RFID
  • vue2+echarts实现水球+外层动效
  • C++ 基础思维导图(一)
  • 【gopher的java学习笔记】依赖管理方式对比(go mod maven)
  • CTFshow—远程命令执行
  • Qt之简易音视频播放器设计(十五)
  • ArrayList 和LinkedList的区别比较
  • Wallpaper壁纸制作学习记录13
  • Visual Studio 2022安装教程
  • std__invoke 的使用
  • 2501d,d.109
  • 1、蓝牙打印机环境搭建
  • Axure RP11安装学习
  • axios和fetch的实现原理以及区别,与XMLHttpRequest的关系,并结合react封装统一请求示例
  • 矩阵运算提速——玩转opencv::Mat
  • C++软件设计模式之模板方法模式
  • 神经网络的初始化方式都有哪些?
  • const成员函数
  • 物理知识1——电流
  • 车载通信架构 --- 智能汽车通信前沿技术
  • Flutter中添加全局防护水印的实现
  • BGP(Border Gateway Protocol)路由收集器
  • 【DAGMM】直接跑tip
  • vscode中调用deepseek实现AI辅助编程
  • AI大模型语音识别转文字