需求:用【restful】接口
-设计资源路径 uri /employees
-设计请求动作 get
-设计请求参数(业务) 无
-设计返回结果json List
创建个员工类 Employee
使用Postman测试:
两个路径相同就会报错
如图可以在postman选择get的方式访问,不会报错是因为路径只有一个get
1、设计资源路径 /employees/{id} {id}叫做路径占位符
2、设计请求动作 get
3、设计请求参数(业务) 接收id(id来自路径里面,?前面)
之前的 js 是来自 (localhost/employees?id = xxx) ?问号之后的
现在是 localhost/employees/id = xxx
4、设计返回结果json employee
@PathVariable 告诉springmvc 去路径上找当前名称的参数,对应的占位符的位置,
把参数值设置到形参上
有贴@PathVariable这个注解才有值,没贴的话默认是从 路径的?问号后面找id参数,就会是null
这种 http://localhost:8080/employees/211 类型的传参就是RestFul风格
跟之前的区别就是一个是路径传参(Restful风格),一个是?id=1,这种问号后面传参(旧方式)
没贴@PathVariable注解
不一致,如图
参数和路径名称不一致时的获取数据的方法。
有多个参数的话,有几个名称不一样的,就要贴几个这个注解
也可以在工具里面测试
设计资源路径 uri /employees/{id} 路径占位符
设计请求动作 delete
设计请求参数(业务) 接收id(来自路径里面,?前面)
设计返回结果 json void 按官方文档,返回的是空文档
设计资源路径 uri /employees/{id} 路径占位符
设计请求动作 put
设计请求参数(业务) 接收id(来自路径里面,?前面),其余参数可以来自body请求体
设计返回结果 json Employee
这个【发送delete删除请求】没改动,证明只改动了type这个发送类型,就能根据发送类型和路径上的参数找到对应的方法
这个【发送delete删除请求】没改动,证明只改动了type这个发送类型,就能根据发送类型和路径上的参数找到对应的方法
比如删除成功后,我想让系统响应的状态码为 204,表示返回的内容为空的意思
成功修改成204的响应状态码
注解带上这个参数,那么在访问该方法的时候,就要带上这个参数
比如两个同样是delete的方法,都是要id作为参数,如果没有这个params作为区别的话,连编译都编译不了
删除多个
删除一个
参数条件满足多个方法,直接报错