发表于: 2020-05-12 23:09:09
1 1383
今天做的事情:
1.完成 rest 接口文档
接口文档:
新增学员
请求地址:post /disciple
字段 | 说明 | 类型 | 备注 | 是否必须 |
student_name | 名字 | string |
| 是 |
major_subject | 学习方向 | String |
| 是 |
qq_num | QQ号码 | string |
| 是 |
student_id | 线上学号 | String |
| 是 |
daily_report | 近期日报链接 | String |
| 是 |
graduated_school | 毕业院校 | string |
|
|
brother | 审核师兄 | string |
|
|
come_from | 了解到修真院的渠道 | string |
|
|
Slogan | 口号 | string |
|
|
返回参数:
字段 | 说明 | 类型 | 备注 | 是否必填 |
code |
| number |
| 是 |
data |
| boolean/disicple |
|
|
-------------------------------------------------------------
修改状态:
请求地址:put /disciple
字段 | 说明 | 类型 | 备注 | 是否必须 |
id | 主键 | int |
| 是 |
student_name | 名字 | string |
|
|
major_subject | 学习方向 | String |
|
|
graduated_school | 毕业院校 | string |
|
|
brother | 审核师兄 | string |
|
|
come_from | 了解到修真院的渠道 | string |
|
|
daily_report | 近期日报链接 | String |
|
|
Slogan | 口号 | string |
|
|
qq_num | QQ号码 | string |
|
|
student_id | 线上学号 | String |
|
|
返回参数:
字段 | 说明 | 类型 | 备注 | 是否必填 |
code |
| number |
| 是 |
-------------------------------------------------------------
查看学员信息:
请求地址:get /disciple/{id}
返回参数:
字段 | 说明 | 类型 | 备注 | 是否必填 |
code |
| number |
| 是 |
data |
| disciple |
|
|
data
字段 | 说明 | 类型 | 备注 | 是否必须 |
id | 主键 | int |
| 是 |
student_name | 名字 | string |
| 是 |
major_subject | 学习方向 | String |
| 是 |
graduated_school | 毕业院校 | string |
| 是 |
brother | 审核师兄 | string |
| 是 |
come_from | 了解到修真院的渠道 | string |
| 是 |
daily_report | 近期日报链接 | String |
| 是 |
Slogan | 口号 | string |
| 是 |
qq_num | QQ号码 | string |
| 是 |
student_id | 线上学号 | String |
| 是 |
-------------------------------------------------------------
删除学员:
请求地址:delete /disicple/{id}
返回参数:
字段 | 说明 | 类型 | 备注 | 是否必填 |
code |
| number |
| 是 |
2.完成了接口的编写
接口测试:
新增
修改
查询
删除
遇到的问题:
接口无法返回 json 数据,实体序列化失败(从起床调到晚上,辛苦陈东师兄了···)。
解决方法:
Spring 升级到 3.1 以上版本。
一开始在想用 jsp 生成 json 数据,所以 json 的收发一直没做,今天想着直接用 postman 收发得了,不用管页面应该会很顺利,没想到遇到这种坑。
收获:
1.原来做 jsp 的时候一直没弄懂http 的 get,post 怎么用,也没用到,今天做 api 的时候终于用到了。
删除与查找的请求地址是一致的,controller 会根据请求的方法是 delete 还是 get 来区分请求的目的。
@RequestMapping(value = "/{id}",method = RequestMethod.GET)
@ResponseBody
public Map<String, Object> queryById(@PathVariable("id") Integer id)
@RequestMapping(value = "/{id}", method = RequestMethod.DELETE)
@ResponseBody
public Map<String, Object> deletedisciple(@PathVariable("id") Integer id)
2.使用 json 收发数据
导入 jackson 的 jar 包
<dependency>
<groupId>com.fasterxml.jackson.core</groupId>
<artifactId>jackson-databind</artifactId>
<version>2.8.1</version>
</dependency>
在 spring 配置文件中注册注解
<mvc:annotation-driven/>
然后在方法名与入参前分别加上
@ResponseBody
@RequestBody
就可以自动序列化与反序列化实体了。
如果是通过链接后面加 id 等书的方法请求的话,入参前的注解要换成
@PathVariable("id")
明天的计划:
部署到服务器测试接口。
评论