博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Spring Boot快速入门(二):http请求
阅读量:5973 次
发布时间:2019-06-19

本文共 2116 字,大约阅读时间需要 7 分钟。

一、准备

:一个接口测试工具

创建一个新工程

选择web

不会的请看

二、开始

新建java类RequestCtrl

1.添加一个all方法,使用@RequestMapping注解,可以处理所有的http请求

@RestController//这是一个控制器并只返回数据不寻找视图public class RequestCtrl{    @RequestMapping("/")//将本方法映射到/    public String all(String name, Integer age)//接受2个参数,name和age    {        return "这里是all\n" + "name: " + name + "\n" + "age: " + age;    }}

requestMapping的作用可以简单理解为给方法加个地址,让别人能访问

通过源码可以看出@RestController是@Controller和ResponseBody的结合注解

@Controller 表明这是一个控制器,将会返回数据或者页面

@ResponseBody 表明只会返回数据,Spring Boot默认将数据使用jaskson序列化为json返回

JSON(JavaScript Object Notation, JS 对象标记) 是一种轻量级的数据交换格式,常见表现形式为键值对{key:value},例如{name:"lierabbit",age:20},字符串和数字直接返回

启动程序,打开postman

对http://localhost:8080发起get请求

发起带参数的请求

使用post请求

2.添加一个get方法,使用@GetMapping注解,只可以处理get类型的http请求

@GetMapping("/get")//将本方法映射到/get,且只能用get方式访问public String get(String name, int age)//接受2个参数,name和age{    return "这里是get\n" + "name: " + name + "\n" + "age: " + age;}

重启程序

使用get方式访问http://localhost:8080/get?name=lierabbit&age=20

尝试使用post访问,将得到405异常 

3.添加一个post方法,使用@PostMapping注解,只可以处理post类型的http请求

@PostMapping("/post")//将本方法映射到/post,且只能用post方式访问public String post(String name, int age)//接受2个参数,name和age{    return "这里是post\n" + "name: " + name + "\n" + "age: " + age;}

重启程序

使用post方式访问

尝试使用get访问,得到405异常

4.添加一个put方法,使用@PutMapping注解,只可以处理put类型的http请求

@PutMapping("/put")//将本方法映射到/put,且只能用put方式访问public User put(@RequestBody User user)//接受一个user实体{    user.setName("名字已经被修改:" + user.getName());    user.setAge(user.getAge() + 1);    return user;}

@RequestBody 表示接受一个user实体(user json)

返回User,会被spring boot自动序列化为json

5.添加一个delete方法,使用@DeleteMapping注解,只可以处理delete类型的http请求

@DeleteMapping("/delete")//将本方法映射到/delete,且只能用delete方式访问public User delete(@RequestBody User user)//接受一个user实体{    user.setName("这个用户将会被删除:" + user.getName());    user.setAge(user.getAge() + 1);    return user;}

6.添加一个patch方法,使用@PatchMapping注解,只可以处理patch类型的http请求

@PatchMapping("/patch")//将本方法映射到/patch,且只能用patch方式访问public User pathch(@RequestBody User user)//接受一个user实体{    user.setName("只改名称:" + user.getName());    return user;}

源码地址:

原文地址:

转载于:https://www.cnblogs.com/lierabbit/p/8284777.html

你可能感兴趣的文章
卓越质量管理成就创新高地 中关村软件园再出发
查看>>
linux rsync 远程同步
查看>>
httpd的manual列目录漏洞
查看>>
myeclipse2014破解过程
查看>>
漫谈几种反编译对抗技术
查看>>
VS 编译错误
查看>>
Timer 和 TimerTask 例子
查看>>
Spring BOOT 集成 RabbitMq 实战操作(一)
查看>>
安装python3.5注意事项及相关命令
查看>>
进程通信之无名信号量
查看>>
logstash通过rsyslog对nginx的日志收集和分析
查看>>
GOTO Berlin: Web API设计原则
查看>>
MVP模式在携程酒店的应用和扩展
查看>>
高通降低芯片能耗 让物联网设备也用上LTE
查看>>
弗吉尼亚理工大学生物复杂性研究所将建设第三个数据中心
查看>>
新型Android木马Xavier爆发:可悄然窃取你的个人信息
查看>>
DeepMind和暴雪联手发布开发工具和replay数据集,让更多AI研究者玩上星际2
查看>>
如何利用数据优化运营?
查看>>
大数据时代下的领导力 — 释放人性 毋庸置疑
查看>>
该来的都来了 美光一大波SSD新品袭来
查看>>