SpingBoot快速入门下

2024-06-21 01:44
文章标签 入门 快速 spingboot

本文主要是介绍SpingBoot快速入门下,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

响应HttpServietResponse

介绍
  • @ResponseBody 加到Controller方法/类上

  • 作用:将方法返回值直接响应,如果返回值是 实体对象/集合,将会自动转JSON格式响应

  • @RestController = @Controller + @ResponseBody;

一般响应

统一响应
  • 在实际开发中一般不会用不同的类作为响应,因为不方便管理,一般会有一个类统一响应

  • 一般会带状态码,和响应类型

public class Result{//响应状态 如 1代表成功 0失败private Integer status;//提示信息,告诉前端我响应的是响应private String msg;//数据部分private Object data;//所有get/set方法  要确保data的对象的属性也有所有set/get方法//返回的json 格式是根据getXXX(); XXX的名称来命名键名,本且转小写
}

@RestController
public class TestController{ //一般响应@RequestMapping("/getData")public _User getData(){System.out.println("getDataRequest");_User user = new _User();user.test = "test_001";user.age= 500;user.addre = new Address();user.addre.province = "A";user.addre.city = "cityb_A_001";return user;}//统一响应@RequestMapping("/getResult")public Result getResult(){System.out.println("getResult");_User user = new _User();user.test = "test_001";user.age= 500;user.addre = new Address();user.addre.province = "A";user.addre.city = "cityb_A_001";Result res = new Result();res.status = 1;             //表示成功res.msg = "Class _User";     //表示数据是_User 类res.data = user;return res;}
}
总结

@ResponseBody 注解

  • 定义: @ResponseBody是Spring MVC框架中的一个注解,它的作用是指示方法的返回值应该直接作为响应体返回给客户端,而不是返回一个视图(View)。

  • 使用场景:

    • 当你想要返回JSON、XML等数据格式,而不是跳转到一个页面。

    • 当你正在构建RESTful API,需要直接返回数据而不是视图。

  • 工作原理:

    • @ResponseBody注解的方法,其返回值将被Spring MVC的HttpMessageConverter转换成客户端请求的格式(如JSON)。

    • 如果方法返回的是String类型,Spring MVC会将这个字符串直接写入响应体。

  • 示例:

    @RequestMapping("/greeting")
    @ResponseBody
    public String greeting() {return "Hello, World!";
    }

    上述代码中,访问

    /greeting

    路径将直接返回字符串"Hello, World!"作为响应体。

统一响应结果

  • 目的: 统一的响应格式有助于前后端分离的开发模式,使得前端开发者可以更容易地处理来自后端的数据。

  • 组成部分:

    • code: 通常是一个整数,表示请求的处理结果。例如,200表示成功,404表示未找到,500表示服务器错误等。

    • msg: 是一个字符串,提供关于响应的额外信息。在成功时,可能是操作的描述;在失败时,提供错误信息。

    • data: 包含实际返回的数据。在成功的响应中,这里可能是请求的数据对象或数据集合。

  • 优点:

    • 标准化: 使得API的响应格式统一,简化客户端的处理逻辑。

    • 易于调试: 通过状态码和消息,可以快速识别请求是否成功以及失败的原因。

    • 扩展性: 方便添加额外的信息,如时间戳、分页信息等,而不影响现有逻辑。

  • 示例:

    {"code": 200,"msg": "操作成功","data": {// 实际的数据对象}
    }

    这个JSON对象是一个典型的统一响应结果示例,它清晰地表明了操作的状态和返回的数据。

这篇关于SpingBoot快速入门下的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/1079854

相关文章

使用Python快速实现链接转word文档

《使用Python快速实现链接转word文档》这篇文章主要为大家详细介绍了如何使用Python快速实现链接转word文档功能,文中的示例代码讲解详细,感兴趣的小伙伴可以跟随小编一起学习一下... 演示代码展示from newspaper import Articlefrom docx import

shell脚本快速检查192.168.1网段ip是否在用的方法

《shell脚本快速检查192.168.1网段ip是否在用的方法》该Shell脚本通过并发ping命令检查192.168.1网段中哪些IP地址正在使用,脚本定义了网络段、超时时间和并行扫描数量,并使用... 目录脚本:检查 192.168.1 网段 IP 是否在用脚本说明使用方法示例输出优化建议总结检查 1

Rust中的Option枚举快速入门教程

《Rust中的Option枚举快速入门教程》Rust中的Option枚举用于表示可能不存在的值,提供了多种方法来处理这些值,避免了空指针异常,文章介绍了Option的定义、常见方法、使用场景以及注意事... 目录引言Option介绍Option的常见方法Option使用场景场景一:函数返回可能不存在的值场景

Spring Security 从入门到进阶系列教程

Spring Security 入门系列 《保护 Web 应用的安全》 《Spring-Security-入门(一):登录与退出》 《Spring-Security-入门(二):基于数据库验证》 《Spring-Security-入门(三):密码加密》 《Spring-Security-入门(四):自定义-Filter》 《Spring-Security-入门(五):在 Sprin

电脑桌面文件删除了怎么找回来?别急,快速恢复攻略在此

在日常使用电脑的过程中,我们经常会遇到这样的情况:一不小心,桌面上的某个重要文件被删除了。这时,大多数人可能会感到惊慌失措,不知所措。 其实,不必过于担心,因为有很多方法可以帮助我们找回被删除的桌面文件。下面,就让我们一起来了解一下这些恢复桌面文件的方法吧。 一、使用撤销操作 如果我们刚刚删除了桌面上的文件,并且还没有进行其他操作,那么可以尝试使用撤销操作来恢复文件。在键盘上同时按下“C

数论入门整理(updating)

一、gcd lcm 基础中的基础,一般用来处理计算第一步什么的,分数化简之类。 LL gcd(LL a, LL b) { return b ? gcd(b, a % b) : a; } <pre name="code" class="cpp">LL lcm(LL a, LL b){LL c = gcd(a, b);return a / c * b;} 例题:

Java 创建图形用户界面(GUI)入门指南(Swing库 JFrame 类)概述

概述 基本概念 Java Swing 的架构 Java Swing 是一个为 Java 设计的 GUI 工具包,是 JAVA 基础类的一部分,基于 Java AWT 构建,提供了一系列轻量级、可定制的图形用户界面(GUI)组件。 与 AWT 相比,Swing 提供了许多比 AWT 更好的屏幕显示元素,更加灵活和可定制,具有更好的跨平台性能。 组件和容器 Java Swing 提供了许多

【IPV6从入门到起飞】5-1 IPV6+Home Assistant(搭建基本环境)

【IPV6从入门到起飞】5-1 IPV6+Home Assistant #搭建基本环境 1 背景2 docker下载 hass3 创建容器4 浏览器访问 hass5 手机APP远程访问hass6 更多玩法 1 背景 既然电脑可以IPV6入站,手机流量可以访问IPV6网络的服务,为什么不在电脑搭建Home Assistant(hass),来控制你的设备呢?@智能家居 @万物互联

poj 2104 and hdu 2665 划分树模板入门题

题意: 给一个数组n(1e5)个数,给一个范围(fr, to, k),求这个范围中第k大的数。 解析: 划分树入门。 bing神的模板。 坑爹的地方是把-l 看成了-1........ 一直re。 代码: poj 2104: #include <iostream>#include <cstdio>#include <cstdlib>#include <al

hdu 4565 推倒公式+矩阵快速幂

题意 求下式的值: Sn=⌈ (a+b√)n⌉%m S_n = \lceil\ (a + \sqrt{b}) ^ n \rceil\% m 其中: 0<a,m<215 0< a, m < 2^{15} 0<b,n<231 0 < b, n < 2^{31} (a−1)2<b<a2 (a-1)^2< b < a^2 解析 令: An=(a+b√)n A_n = (a +