




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
SpringBoot框架开发—快速开发RESTfulAPI接口CONTENTSRESTful
API风格01.SpringBoot相关注解02.实现RESTful
API接口03.本节知识点00知识点了解掌握熟练精通RESTfulAPI接口风格√
注解@RestController的应用
√
注解@ResponseBody的应用
√
注解@RequestMapping的应用
√
注解@RequestParam的应用
√
注解@PathVariable的应用
√
编写RESTfulAPI接口
√PART01RESTful
API风格RESTful
API风格01RESTfulAPI接口要求返回的格式是application/json,我们知道网页返回的格式一般是text/html,如下表示一个传统接口和RESTful接口的对比表。功能传统接口类型Restful接口类型查询/game/query?id=1GET/game/1GET添加/game/insertPOST/gamePOST修改/game/updatePOST/game/1PUT删除/game/delete?id=1GET/game/1DELETEPART02SpringBoot相关注解SpringBoot相关注解02@RestController一般用于Controller类上,指定所有接口返回的数据都是text/json格式。@ResponseBody用于方法上,指定接口返回text/json格式,用了@RestController就没有必要ResponseBody。@RequestParam用于方法上,映射请求参数到java方法的参数,当前端传递的参数和后台自己定义的参数不一致时,可以使用name属性来标记。@PathVariable用于方法上,映射url片段到java方法的参数。SpringBoot相关注解02@GetMapping用于方法上,是一个组合注解,与@RequestMapping(method=RequestMethod.GET)作用一致。@PostMapping用于方法上,是一个组合注解,与@RequestMapping(method=RequestMethod.POST)作用一致。@PutMapping用于方法上,是一个组合注解,与@RequestMapping(method=RequestMethod.PUT)作用一致。@DeleteMapping用于方法上,是一个组合注解,与@RequestMapping(method=RequestMethod.DELETE)作用一致。PART03实现RESTful
API接口实现RESTful
API接口03【实例3-14】【任务要求】
在SpringBoot项目中,使用MyBatis框架进行数据访问,以游戏模块为例,实现RESTful的接口开发。
使用SpringBoot框架可以快速实现一套符合规范,并且具有RESTful风格的API接口。实现RESTful
API接口03【任务实现】
【实例3-13】已经实现了对数据库的增删改查操作,这里只需要添加业务层和控制层。创建service对象
在java目录下创建.service包,并添加业务层service对象。@Service
publicclassGameService{
@Autowired
GameMappergameMapper;
publicGamefindGameById(Integerid){
returngameMapper.findGameById(id);
}
publicList<Game>findGames(){
returngameMapper.findGames();
}
publicintinsertGame(Gamegame){
returngameMapper.insertGame(game);
}
publicintupdateGame(Gamegame){
returngameMapper.updateGame(game);
}
publicintdeleteGame(Integerid){
returngameMapper.deleteGame(id);
}}实现RESTful
API接口03【任务实现】2.创建controller类在java目录下创建.controller包,并添加控制层对象。@RestController
@RequestMapping("/game")
publicclassGameController{
@Autowired
GameServicegameService;
@GetMapping("/{gameId}")
publicGamegetGameById(@PathVariable("gameId")Integerid){
returngameService.findGameById(id);
}
@GetMapping
publicList<Game>findGames(){
returngameService.findGames();
}
@PostMapping
publicintinsertGame(@RequestBodyGamegame){
returngameService.insertGame(game);
}实现RESTful
API接口03【任务实现】2.创建controller类在java目录下创建.controller包,并添加控制层对象。
@PutMapping("/{gameId}")
publicintupdateGame(@PathVariable("gameId")Integerid){
Gamegame=gameService.findGameById(id);
if(game!=null){
thrownewRuntimeException("thegameisnotfound");
}
returngameService.updateGame(game);
}
@DeleteMapping("/{Id}")
publicintdeleteGame(@PathVariableIntegerid){
returngameService.deleteGame(id);
}
}
实现RESTful
API接口03【任务实现】3.接口测试
启动项目,对于Get请求,可以在浏览器地址栏上输入请求路径,直接显示查询结果,返回json数据格式。实现RESTful
API接口03【任务实现】3.接口测试
[
{
"id":2,
"gameName":"消消乐2",
"categoryId":2,
"price":220,
"description":"消消乐2游戏",
"pubdate":"2020-12-09T02:24:19.000+00:00"
},
{
"id":3
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 南通中考数学试题及答案
- 可持续时尚与环保材料研究-洞察及研究
- 函数高等数学试卷
- 杭州14年中考数学试卷
- 微生物组菌群移植-洞察及研究
- 河北有难度的数学试卷
- a2科目一模拟考试试题及答案
- 2017全国卷3试题及答案
- 国际遗产保护标准-洞察及研究
- 农村电商直播基地建设与农村电子商务生态构建研究报告
- 2023年四川省宜宾市全科医学专业实践技能测试卷(含答案)
- 电梯井道脚手架施工方案
- 兴平市生活垃圾焚烧发电项目环评报告
- 初中数学浙教版九年级上册第4章 相似三角形4.3 相似三角形 全国公开课一等奖
- 主令电器(课用)课件
- DLT 5066-2010 水电站水力机械辅助设备系统设计技术规定
- 湘少版英语六年级下册全册教案
- 测绘生产困难类别细则及工日定额
- 湖南省长郡中学“澄池”杯数学竞赛初赛试题(扫描版含答案)
- 消防系统施工总进度计划
- 2022年广东省中山市纪念中学三鑫双语学校小升初数学试卷
评论
0/150
提交评论