用SpringBoot实现post和get请求(多图)

news2024/11/24 16:50:14

用SpringBoot实现post和get请求(多图)

  • 用SpringBoot实现post和get请求
    • 创建SpringBoot工程
    • 创建controller
    • 验证
    • FAQ
      • 创建项目后依赖报错Project 'org.springframework.boot:spring-boot-starter-parent:3.1.2.RELEASE' not found more

用SpringBoot实现post和get请求

先从一个最简单的工程开始,用SpringBoot实现post和get请求,作为后续练习的基础。这部分内容比较简单,就不用文字了,能上图的地方直接上图,减少阅读成本。本来就是一个以实操为主的练习,文字多了读起来也累。
首先保证本地的开发环境安装了maven和git,习惯用gradle的也请自行安装。

创建SpringBoot工程

打开idea,File – new – project,创建一个工程,我这里用的是SpringBoot Initializer向导,如图:
初始化工程
点击Next,按照如下图参数设置,然后点击Next
在这里插入图片描述
上图中:

  • Group:相当于二级包名
  • Artifact:项目名
  • package:自动生成,也可以自己修改
  • packing:因为最终是要能实现独立部署的,因此这里选择jar。也可以选择war

要实现get和post请求,只需要SpringBoot Web就可以了。

在这里插入图片描述
下一步后,设置一下项目的保存地址:
在这里插入图片描述
点击Finish,项目就创建完成了。创建完成后的项目结构如图:
在这里插入图片描述

创建controller

创建单独的controller包。注意规范性,不要把类建的哪个目录都有,应该按照工程规范建立controller,service,common,utils,dao这样的包或者moudle
在这里插入图片描述
在类中编写如下代码:

package net.csdn.blog.xiaoma.example.springboot.controllerdemo.controllerdemo.controller;

import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.*;

@Controller
@RequestMapping("/demo")
@RestController
public class AppDemoController {

    @PostMapping("/postMessage")
    public String postMessage(@RequestBody String postMsg) {
        return "post的消息是" + postMsg;
    }

    @RequestMapping(value="/get/{name}",method = RequestMethod.GET)
    public String get(@PathVariable("name") String name ) {
        System.out.println("getMsg=" + name);
        return "hello,请求参数是:" + name;
    }

}

编写完成后,右键ControllerdemoApplication类,然后run起来,这个时候能看到控制台开始刷启动日志。

验证

用jmeter发送post和get请求
在这里插入图片描述
在这里插入图片描述

FAQ

创建项目后依赖报错Project ‘org.springframework.boot:spring-boot-starter-parent:3.1.2.RELEASE’ not found more

原因和网上说的一致,创建工程中用到了新版本的包,但是本地仓库或者缓存中还是旧的,这种情况简单的且能管理缓存并且重启就可以了。
在这里插入图片描述
重启后至少maven.pom文件中的依赖就不报错了。

如果按照上面的方法POM文件仍然提示找不到的错误,那有可能是你的maven连不上更新服务器,导致更新失败。你可以修改MAVAN的.setting.xml文件,将国内的maven仓库地址加进去,然后再刷新maven就可以了。

<mirror>
        <id>alimaven</id>
        <name>aliyun maven</name>
        <url>http://maven.aliyun.com/nexus/content/groups/public/</url>
        <mirrorOf>central</mirrorOf>
 </mirror>

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

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

相关文章

AQS构建锁和同步器的框架

1.概述 AQS全称AbstractQueuedSynchronizer&#xff0c;此类在java.util.concurrent.locks包下面&#xff0c;是一个构建锁和同步器的框架&#xff0c;比如ReentrantLock就是基于AQS来实现的。 2.AQS实现原理 AQS内部有一个由volatile修饰(保证其可见性)的变量state&#xf…

PDF文件忘记密码,怎么办?

PDF文件设置密码分为打开密码和限制密码&#xff0c;忘记了密码分别如何解密PDF密码&#xff1f; 如果是限制编辑密码忘记了&#xff0c;我们可以试着将PDF文件转换成其他格式来避开限制编辑&#xff0c;然后重新将文件转换回PDF格式就可以了。 如果因为转换之后导致文件格式…

Tuxera NTFS2023Mac强大的Mac读写工具

Mac用户在使用NTFS格式移动硬盘时&#xff0c;会遇到无法写入硬盘的情况。要想解决无法写入的问题&#xff0c;很多人选择使用Mac读写软件。面对市面上“众多”的读写硬盘软件&#xff0c;用户应该怎么选择呢&#xff1f;初次接触移动硬盘的伙伴可能不知道移动硬盘怎么和电脑连…

RabbitMQ 教程 | 第6章 RabbitMQ 配置

&#x1f468;&#x1f3fb;‍&#x1f4bb; 热爱摄影的程序员 &#x1f468;&#x1f3fb;‍&#x1f3a8; 喜欢编码的设计师 &#x1f9d5;&#x1f3fb; 擅长设计的剪辑师 &#x1f9d1;&#x1f3fb;‍&#x1f3eb; 一位高冷无情的编码爱好者 大家好&#xff0c;我是 DevO…

科大讯飞 - 基于论文摘要的文本分类与关键词抽取挑战赛(DataWhale-Camp)

文章目录 1、赛题信息2、解决方案2.1 飞桨Baseline&#xff08;提供代码&#xff09;2.2 Bert和调参2.3 chatGLMlora大模型 3、关于DataWhale-NLP 1、赛题信息 提交地址&#xff1a;https://challenge.xfyun.cn/topic/info?typeabstract-of-the-paper&chymfk4uU 项目题目…

我的会议(会议通知)

前言: 我们在实现了发布会议功能&#xff0c;我的会议功能的基础上&#xff0c;继续来实现会议通知的功能。 4.1实现的特色功能&#xff1a; 当有会议要参加时&#xff0c;通过查询会议通知可以知道会议的内容&#xff0c;以及当前会议状态&#xff08;未读&#xff09; 4.2思路…

在Linux中怎么查找文件

2023年8月1日&#xff0c;周二上午 目录 Linux的四种搜索命令find简要说明举例说明拓展阅读locate 简要说明举例说明whereis简要说明举例说明which简要说明举例说明 Linux的四种搜索命令 findlocate&#xff08;不一定内置有&#xff0c;可能要下载mlocate包&#xff09;wher…

【概念理解】HAL库的滴答定时器HAL_Delay()函数的实现原理

来源&#xff1a;bilibili视频 这里写目录标题 概述一、寄存器部分1. 控制和状态寄存器(STK_CTRL)2. 加载值寄存器&#xff08;STK_LOAD&#xff09;3.当前值寄存器&#xff08;STK_VAL&#xff09; 二、代码部分hal_delay()1. hal_initTick()滴答定时器的初始化2. 将七万二传…

Redis 客户端有哪些?

文章目录 JedisLettuceRedisson最佳实践 - 到底用哪个&#xff1f; Redis 最常见的 Java 客户端有两个&#xff0c;Jedis 和 Lettuce&#xff0c;高级客户端有 Redisson&#xff0c;见下图&#xff08;图源 Clients | Redis&#xff09; Jedis Github地址&#xff1a;redis/j…

Windows下安装Hive(包安装成功)

Windows下安装Hive Hive与Hadoop的版本选择很关键&#xff0c;千万不能选错&#xff0c;否则各种报错。一、Hive下载1.1、官网下载Hive1.2、网盘下载Hive 二、解压安装包&#xff0c;配置Hive环境变量2.1、环境变量新增&#xff1a;HIVE_HOME2.2、修改Path环境变量&#xff0c;…

Oracle免费在线编程:Oracle APEX

前提&#xff1a; 注意&#xff1a;你要有个梯子才能更稳定的访问。 不需要安装Oracle&#xff0c;但是需要注册。&#xff08;还算方便的&#xff09; 注册&登录过程 进入Oracle APEX官网&#xff0c;我们选择免费的APEX工作区即可&#xff0c;点击“免费注册”。在注册…

基于H5或者微信小程序开发GIS地图实战全套代码

1 下面有一定基础的可以不看 (1)第一篇请看 微信小程序开发天地图 (2)第二篇请看 http://GeoServer+PostgreSQL+PostGIS+Tomcat+QGIS一整套相关 (3)第三篇请看 有国产化需求的 (4)第四篇请看 支持国家EPSG:4490 2 vue+openlayers实例代码

ThreadLocal原理

ThreadLocal原理 ThreadLocal对象new出来存放到堆中&#xff0c;ThreadLocal引用是存放在栈里 Thread 类有个 ThreadLocalMap 成员变量&#xff0c;Map的key是Threadlocal 对象&#xff0c;value是你要存放的线程局部变量。 public void set(T value) {//获取当前线程Thread&…

SpringBoot复习:(11)SpringApplication中的listeners成员变量是怎么初始化的?

initializers成员变量定义如下&#xff1a; 在构造方法中&#xff1a; setListeners代码如下&#xff1a; 给setListeners方法传递的是getSpringFactoriesInstances(ApplicationListener.class). getSpringFactoriesInstances代码如下&#xff1a; 调用的重载的getSpringFa…

redis 高级篇4 分布式锁

一 redis架构图 1.1 redis的架构图 1.2 分布式锁满足条件 1.独占性&#xff1b;2.高可用&#xff1b;3.防死锁&#xff1b;4.不乱抢&#xff1b;5.重入性 二 分布式锁的案例情况 2.1 分布式锁1:单机分布式部署 描述&#xff1a; 使用lock锁和synchronized&#xff0c;单机…

【shell】获取ping的时延数据并分析网络情况及常用命令学习

文章目录 获取ping的时延数据并分析网络情况|、||、&、&&辨析teetailkillall 获取ping的时延数据并分析网络情况 网络情况经常让我们头疼&#xff0c;每次都需要手动在终端ping太麻烦了&#xff0c;不如写个脚本ping并将数据带上时间戳存入文件&#xff0c;然后也…

iPhone 6透明屏是什么?原理、特点、优势

iPhone 6透明屏是一种特殊的屏幕技术&#xff0c;它能够使手机屏幕变得透明&#xff0c;让用户能够透过屏幕看到手机背后的物体。 这种技术在科幻电影中经常出现&#xff0c;给人一种未来科技的感觉。下面将介绍iPhone 6透明屏的原理、特点以及可能的应用。 iPhone 6透明屏的原…

【外卖系统】新增菜品

需求分析 在后台中&#xff0c;通过新增功能来添加一个新的菜品&#xff0c;在添加菜品时需要选择当前菜品所属的菜品分类&#xff0c;并且需要上传的菜品图片。 代码开发 需要添加的类和基本接口&#xff1a;实体类DishFlavor、Mapper接口DishFlavorMapper、业务层接口Dish…

顶尖211,央企收割机!面试仅16%!超线30分,稳稳上岸!

一、学校及专业介绍 南京理工大学&#xff08;Nanjing University of Science and Technology&#xff09;&#xff0c;简称南理&#xff0c;位于南京市&#xff0c;是隶属于工业和信息化部的全国重点大学&#xff0c;是国家“双一流”建设高校&#xff0c;“211工程”。由于学…

百模征战,如何解决数据卡脖子问题?

‍数据智能产业创新服务媒体 ——聚焦数智 改变商业 继ChatGPT以来&#xff0c;大模型在国内掀起了一股热潮&#xff0c;大有百模征战之意。而其中数据、算法、算力作为大模型训练的三驾马车&#xff0c;预训练数据的数量、质量、多样性成为大模型能力表现的关键性因素&#x…