RestFul URL
基本概念
模型 - 视图 - 控制器(MVC)是⼀个众所周知的以设计界⾯应⽤程序为基础的设计思想。
Restful ⻛格的 API 是⼀种软件架构⻛格,设计⻛格⽽不是标准,只是提供了⼀组设计原则和约束条 件。它主要⽤于客户端和服务器交互类的软件。基于这个⻛格设计的软件可以更简洁,更有层次,更易 于实现缓存等机制。 在Restful ⻛格中,⽤户请求的 url 使⽤同⼀个 url,⽤请求⽅式:get,post,delete,put...等⽅式对请 求的处理⽅法进⾏区分,这样可以在前后台分离式的开发中使得前端开发⼈员不会对请求的资源地址产 ⽣混淆和⼤量的检查⽅法名的麻烦,形成⼀个统⼀的接⼝。 在 Restful ⻛格中,现有规定如下:
- GET(SELECT):从服务器查询,可以在服务器通过请求的参数区分查询的⽅式。
- POST(CREATE):在服务器端新建⼀个资源,调⽤ insert 操作。
- PUT(UPDATE):在服务器端更新资源,调⽤ update 操作。
- PATCH(UPDATE):在服务器端更新资源(客户端提供改变的属性)。(⽬前 jdk7 未实现,tomcat7 不⽀持)。
- DELETE(DELETE):从服务器端删除资源,调⽤ delete 语句。
URL 映射地址配置:
1. Get 请求配置
/**
* restful --> get 请求,执⾏查询操作
* @param id
* @return
*/
@GetMapping("account/{id}")
@ResponseBody
public Account queryAccountById(@PathVariable Integer id){
return accountService.selectById(id);
}
2. Delete 请求配置
/* restful-->delete 请求 执⾏删除操作
* @param id
* @return
*/
@DeleteMapping("account/{id}")
@ResponseBody
public Map<String,Object> deleteAccount(@PathVariable Integer id){
int result = accountService.delAccount(id);
Map<String,Object> map=new HashMap<String,Object>();
if(result == 1 ){
map.put("msg","success");
map.put("code",200);
} else {
map.put("msg","error");
map.put("code",500);
}
return map;
}
3. Post 请求配置
/* restful --> post 请求,执⾏添加操作
* @return
*/
@PostMapping("account")
@ResponseBody
public Map<String,Object> saveAccount(@RequestBody Account account){
int result = accountService.saveAccount(account);
Map<String,Object> map=new HashMap<String,Object>();
if(result == 1 ){
map.put("msg","success");
map.put("code",200);
} else {
map.put("msg","error");
map.put("code",500);
}
return map;
}
4. Put 请求配置
/* restful-->put 请求执⾏更新操作
* @param id
* @param account
* @return
*/
@PutMapping("account")
@ResponseBody
public Map<String,Object> updateAccount(@RequestBody Account account){
int result = accountService.updateAccount(account);
Map<String,Object> map=new HashMap<String,Object>();
if(result == 1 ){
map.put("msg","success");
map.put("code",200);
} else {
map.put("msg","error");
map.put("code",500);
}
return map;
}