版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
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. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2026年初一语文第二学期期末模拟考试卷及答案(共九套)
- 2026年护理伦理学的理论基础课件
- 探索民宿服务行业-市场洞察与投资机会
- 药厂工艺变革-提升质量与效率
- 数字出版:决胜市场竞争-制定有效策略持续发展提升
- 电子行业MemoryS2026闪存大会跟踪报告:行业缺货或将延续至27年关注未来存储技术创新重构
- 电力ETF景顺:把握电力资产价值重估的时代机遇
- 高中物理生态课堂理念下培养科学思维能力的分析
- 催缴违约未付的工程款函件(8篇)
- 时光请慢点+课件-2025-2026学年高二下学期母亲节主题班会
- 心理咨询师考试真题(含答案解析)
- (高清版)JTGT 3365-02-2020 公路涵洞设计规范
- 初中部学生习惯养成教育记录表和家长评价表
- 露天矿山施工组织设计方案
- MOOC 无机非金属材料工学-南京工业大学 中国大学慕课答案
- 血细胞分析课件
- 手术麻醉安全管理及护理配合课件
- 劳动纠纷应急预案
- 外科学第二十三章 颅内和椎管内血管性疾病
- YY 0777-2023射频热疗设备
- 沈阳地铁6号线一期工程环评报告
评论
0/150
提交评论