springboot系列-api接口请求实现

springboot HTTP请求接口实现

基于springboot 2.6.6

代码地址:github仓库地址

更多系列教程请关注公众号’coderlike’

如果觉得有帮助希望能关注下公众号
在这里插入图片描述

<parent><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-parent</artifactId><version>2.6.6</version><relativePath/> <!-- lookup parent from repository -->
</parent>

依赖

添加springboot-starter-web

添加lombok(简洁代码)

    <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId><version>2.6.6</version></dependency><dependency><groupId>org.projectlombok</groupId><artifactId>lombok</artifactId><version>1.18.30</version><scope>provided</scope></dependency>

配置文件 application.yml

配置端口(不配置时,默认是8080),按机器空闲端口随意配置,只要没被暂用就行

server:port: 8080

准备基础样例文件

新建package ‘controller和model’
新建TestController.java和User.java文件
完成后代码文件组织架构如下
在这里插入图片描述

相关注解

  • @RestController

    作用在类上,表示是一个restful风格的controller

  • @RequestMapping 路由定义

    1.注解在类上,表示整个类都以该值为前缀

    2.也可以注解在方法上,但是需要自行指定求情方式(GET/POST/DELETE…)

  • @GetMapping GET请求

  • @PostMapping POST请求

  • @DeleteMapping DELETE请求

  • …其他不常用的就不一一列出类

使用方式

见附录的TestController.java
接口测试可以使用Postman,也可以使用IDEA里优秀的插件

附录

User.java

package org.example.model;import lombok.Data;@Data
public class User {private String name;private int age;}

TestController.java

package org.example.controller;import org.example.model.User;
import org.springframework.web.bind.annotation.*;@RestController
@RequestMapping("/api/test")
public class TestController {//GET请求/** 不带参数的HTTP GET请求*<a href="http://localhost:8080/api/test/v1">访问url</a>*/@GetMapping("v1")public String getTest(){return "hello test";}/** 带参数的HTTP GET请求(参数作为url路径的一部分)*<a href="http://localhost:8080/api/test/v1/zhangsan">访问url</a>*/@GetMapping("v1/{name}")public String getTest2(@PathVariable("name") String nameParam){return nameParam;}/** 带参数的HTTP GET请求*<a href="http://localhost:8080/api/test/v2?name=zhangsan">访问url</a>*/@GetMapping("v2")public String getTest3(@RequestParam("name") String nameParam){return "hello, my name is " + nameParam;}/** 带参数的HTTP GET请求*<a href="http://localhost:8080/api/test/v3?name=zhangsan&age=12">访问url</a>*/@GetMapping("v3")public String getTest4(@RequestParam("name") String nameParam,@RequestParam("age") String ageParam){return "hello, my name is " + nameParam + ", age is " + ageParam;}/** 带参数的HTTP GET请求,用实体对象接收参数*<a href="http://localhost:8080/api/test/v4?name=zhangsan&age=12">访问url</a>*/@GetMapping("v4")public String getTest4(User user){return "hello, from object, my name is " + user.getName() + ", age is " + user.getAge();}//POST请求/**不带参数的post请求**/@PostMapping("v1/post")public String postTest(){return "post without params";}/**带参数的post请求**/@PostMapping("v2/post")public String postTest(@RequestBody User user){return "post with params, name=" + user.getName() + ",age=" + user.getAge();}}

更多系列教程请关注公众号’coderlike’

如果觉得有帮助希望能关注下公众号
外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/800161.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Elasticsearch索引之嵌套类型:深度剖析与实战应用

码到三十五 &#xff1a; 个人主页 心中有诗画&#xff0c;指尖舞代码&#xff0c;目光览世界&#xff0c;步履越千山&#xff0c;人间尽值得 ! Elasticsearch是一个基于Lucene的搜索服务器&#xff0c;它提供了一个分布式、多租户能力的全文搜索引擎&#xff0c;并带有一个基…

烧坏两块单片机,不知道原因?

没有看你的原理图&#xff0c;以下是造成烧毁芯片的几个环节&#xff1a; 1. 最大的可能性是你的单片机电机控制输出与电机驱动电路没有隔离。 我的经验&#xff0c;使用STM32控制电机&#xff0c;无论是直流电机脉宽调制&#xff0c;还是步进电机控制&#xff0c;控制电路与…

PCA算法(Principal Component Analysis)揭秘

经典PCA算法 PCA算法的应用包括降维、有损数据压缩、特征抽取、数据可视化等。目前PCA算法有两个通用定义&#xff0c;能殊途同归&#xff0c;得到相同的结果。一方面&#xff0c;我们可以用正交投影来定义PCA&#xff0c;即将数据投影到更低维的线性子空间&#xff0c;也被称…

DolphinScheduler 答案整理,最新面试题

DolphinScheduler的架构设计是怎样的&#xff1f; DolphinScheduler的架构设计主要分为四个层次&#xff1a;前端界面层、API服务层、调度层和执行层。 1、前端界面层&#xff1a; 提供任务的定义、流程的设计、监控等功能&#xff0c;用户通过前端界面操作整个系统。 2、AP…

“揭秘循环购模式:快消品行业复购利器

大家好&#xff0c;我是吴军&#xff0c;来自一家专注于软件开发与商业模式设计的公司。我们的核心业务是构建商城系统&#xff0c;并为各企业提供全方位的商业模式解决方案。至今&#xff0c;我们已经成功打造了超过两百种独特的商业模式&#xff0c;助力众多企业实现商业目标…

C++的并发世界(九)——条件变量

0.绪论——单例模型 单例设计模式是一种常见的设计模式&#xff0c;用于确保某个类只能创建一个实例。由于单例实例是全局唯一的。因此在多线程环境中使用单例模式时,需要考虑线程安全的问题。 1.消费者设计模式 2.condition_variable使用步骤 ①准备好信号量 std::conditio…

Linux系统Docker部署Apache Superset并实现公网实时访问本地数据

文章目录 前言1. 使用Docker部署Apache Superset1.1 第一步安装docker 、docker compose1.2 克隆superset代码到本地并使用docker compose启动 2. 安装cpolar内网穿透&#xff0c;实现公网访问3. 设置固定连接公网地址 前言 Superset是一款由中国知名科技公司开源的“现代化的…

电商API接口告诉你中国跨境电商何以“一路繁花”?

3月31日&#xff0c;启程跨境华东中心仓突破单日自营订单5000单&#xff0c;刷新连云港市跨境进口单日纪录。一季度&#xff0c;连云港市纳入“点点通”公共服务平台统计的跨境电商交易额达2.06亿元&#xff0c;同比增长77.03%。 连云港的“景象”只是中国跨境电商业态蓬勃发展…

管廊ar实景可视化巡检提升安全性

在科技日新月异的今天&#xff0c;智慧工地ar远程巡检交互系统应运而生&#xff0c;它是ar开发公司深圳华锐视点综合运用了AR增强现实、5G通信、人工智能、物联网以及GPS北斗定位等前沿技术&#xff0c;为企业打造了一套全新的数字化巡检解决方案。不仅解放了巡检人员的双手&am…

揭秘IP地理位置:从技术原理到隐私考量

在当今数字化的世界中&#xff0c;IP 地理位置已成为网络定位、广告定向和安全控制等领域的重要工具。然而&#xff0c;对于大多数人来说&#xff0c;IP 地理位置的工作原理以及与隐私之间的关系可能还有些模糊。本文将深入探讨 IP 地理位置的技术原理&#xff0c;以及与隐私相…

Vulnhub:MHZ_CXF: C1F

目录 信息收集 arp-scan nmap nikto WEB web信息收集 dirmap gobuster ssh登录 提权 获得初始立足点 系统信息收集 横向渗透 提权 信息收集 arp-scan ┌──(root㉿ru)-[~/桌面] └─# arp-scan -l Interface: eth0, type: EN10MB, MAC: 00:50:56:…

2024Spring> HNU-计算机系统-实验2-datalab-导引

前言 datalab考验对于位运算以及浮点数存储的理解&#xff0c;如果真的肯花时间去搞懂&#xff0c;对计算机系统存储的理解真的能上一个台阶。与课程考试关联性上来说不是很大&#xff0c;但对于IEEE的浮点数表示一定要熟练掌握。 导引 ①实验工具包 要完成的是bits.c中的15个…

解决arcgis发布服务时报错:要素服务需要一个已注册的数据库

发布服务时发生以下报错&#xff1a; 双击列表中的报错项&#xff0c;在弹出的窗口中点击【已注册的数据库】后边的添加按钮&#xff0c;设置注册数据库的名称 点击添加按钮&#xff0c;配置数据库的基本信息&#xff08;注意&#xff1a;这里配置的数据库连接需要与连接sde数据…

Linux使用宝塔面板部署Discuz结合内网穿透实现公网访问本地论坛

文章目录 前言1.安装基础环境2.一键部署Discuz3.安装cpolar工具4.配置域名访问Discuz5.固定域名公网地址6.配置Discuz论坛 前言 Crossday Discuz! Board&#xff08;以下简称 Discuz!&#xff09;是一套通用的社区论坛软件系统&#xff0c;用户可以在不需要任何编程的基础上&a…

鸿蒙实现一种仿小红书首页滑动联动效果

前言&#xff1a; DevEco Studio版本&#xff1a;4.0.0.600 效果描述&#xff1a;通过手指滑动列表&#xff0c;控制位置显示效果为&#xff1a;不论列表在什么位置下滑时下图粉色位置布局显示&#xff0c;手指上滑时下图粉色位置布局隐藏。 效果&#xff1a; 原理分析&…

helm与k8s

文章目录 一、helm二、K8S/K3S1.K8S基本组件1.1 资源对象1.2 核心组件1.3典型的创建 Pod 的流程1.4 Kubernetes 多组件之间的通信原理 2. YAML 文件2.1 Maps2.2 Lists2.3 使用 YAML 创建 Pod2.4 创建 Deployment 3.用 kubeadm 搭建集群环境3.1 环境3.2 镜像&#xff08;如果你的…

江南大学酒科技馆OLED透明屏项目方案

一、项目概述 本项目旨在为无锡江南大学酒科技馆提供OLED透明屏解决方案&#xff0c;通过安装2x2的OLED透明屏&#xff0c;为参观者带来全新的视觉体验&#xff0c;同时提升酒科技馆的展示效果与科技感。 二、产品选型 本项目选用OLED透明屏&#xff0c;其具有高透明度、高对比…

低温漂、低功耗电压基准,用在精密数据采集系统,供电类设备,工业仪表,测试设备等领域

MSR015/MSR025 是低温漂、低功耗、高精度 CMOS 电压基准&#xff0c; 具有 0.05% 初始精度、低功耗特点。该器件的低输出电压迟滞和低长期输出电压 漂移特性&#xff0c;进一步提高稳定性和系统可靠性。 此外&#xff0c;器件的小尺寸和低运行 电流特性使其非常适合便携…

Leetcode面试经典150_Q122买卖股票的最佳时机II

题目&#xff1a; 给你一个整数数组 prices &#xff0c;其中 prices[i] 表示某支股票第 i 天的价格。 在每一天&#xff0c;你可以决定是否购买和/或出售股票。你在任何时候 最多 只能持有 一股 股票。你也可以先购买&#xff0c;然后在 同一天 出售。 返回 你能获得的 最大…

达梦备份与恢复

达梦备份与恢复 基础环境 操作系统&#xff1a;Red Hat Enterprise Linux Server release 7.9 (Maipo) 数据库版本&#xff1a;DM Database Server 64 V8 架构&#xff1a;单实例1 设置bak_path路径 --创建备份文件存放目录 su - dmdba mkdir -p /dm8/backup--修改dm.ini 文件…