1.控制层Resultful风格

  • Get 获取资源

  • Put 更新资源

  • Patch 更新部分属性

  • Delete 删除资源

  • Post 创建资源

合理的使用postMapping、putMapping、getMapping、deleteMapping

2.不同注解接收参数方法

接收少量数据GetMapping

getMapping的请求url的形式有两种:

1.一种是 后台访问地址?参数1= “参数1”&参数2=“参数2”,在后台取出路径上的值可以用,在后台程序对应方法的路径可以只需要写路径即可

http://example.com/api/users?userId=123&status=active

// Java 示例  

@GetMapping("/api/users")  

public ResponseEntity<User> getUser(@RequestParam String userId, @RequestParam String status) {  

    // 在这里可以使用 userId 和 status  

}


2.第二种是 后台访问地址 ?参数,在后台程序对应方法的路径之后需要加一个{参数名}

http://example.com/api/users/123

// Java 示例  

@GetMapping("/api/users/{userId}")  

public ResponseEntity<User> getUser(@PathVariable String userId) {  

    // 在这里可以使用 userId  

}

接收大量数据/表单用PostMapping

post的参数呢是一个对象,从前端角度出发可以看成一个json格式的字符串,在后台接收的时候,可以直接用一个对象来接收,这个对象前面加上注解@ResquestBody即可

补充说明PutMapping和DeleteMapping

  1. put跟post类似,对应的是更新操作,传过来的也是一个json字符串可以用@RequestBody的形式接收,也可以像get那样,用参数的形式进行传值

  2. delete的用法就跟get类似了,delete对应的是删除,把字段的值传过来即可

3.取出路径上的参数注解

取出url路径上的参数:
第一种用@RequestParam,这个注解的value指定路径上的参数名,require用来标识是否是必须要传的参数(适用于路径为/id)


第二种用@PathVariable,这个直接在注解的参数中写入参数名就可以了(适用于路径为{id})


第三种 实体参数接收(对象):加注解@ModelAttribute或者@RequestBody

4.AjaxResult和toAjax(控制层extends BaseController)

在controller控制器中使用调用BaseControllertoAjax(),查询调用AjaxResult()的success()

(其他更详细讲解见java返回ajax请求工具类,返回状态码等信息_return toajax-CSDN博客

5.验证结果使用postman

亲测可用,注意如果传对象(新增修改需要用到),需要用Body里form-data属性添加key-value

6.常见状态码

200    200 ok 服务器成功返回用户的请求数据 。

          201 create 用户创建或修改数据成功

          202 Accept有一个请求进入后台排队

          204 No Content 删除数据成功

400 用户发送的请求有错误,服务器没有进行新建或修改操作

 401用户没有权限 用户名,密码错误

403 用户得到授权,但是访问被禁止

404 用户发出的请求是不存在的记录,服务器没有进行操作

406用户请求的格式不对

410 用户请求的资源被永久删除,不会被诶获得

500 服务器错误,用户无法进行判断是否请求成功

200 系列是成功的,400系列是客户端,500系列是服务端

7.注解的写法

/**  
 * 获取商品列表  
 * @param productId 商品ID
 * @return 商品列表
 * @author adi 
 */