发表于: 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")


明天的计划:

部署到服务器测试接口。


返回列表 返回列表
评论

    分享到