当控制器处理了请求之后,向客户端响应的结果中,应该至少包含:
- 业务状态码:通常是数值类型的,客户端可以根据此数值来判断操作成功与否,或者,失败时是哪一种失败,具体值应该是由服务器端和客户端协商的
- 消息:是字符串类型的,客户端可以将此消息直接显示在软件的界面中(例如显示在网页中、显示在手机APP中……),有了这个数据,客户端就不必自行组织语言来描述操作结果
由于响应结果只有1个,但是需要同时包含业务状态和消息,应该使用JSON格式来组织这样的结果,例如:
{
"state": 1,
"message": "添加相册成功!"
}
或者:
{
"state": 2,
"message": "添加相册失败,尝试添加的相册名称已经被使用!"
}
在Spring MVC框架中,当需要响应JSON格式的字符串时,需要:
- 使用自定义的数据类型作为处理请求的方法的返回值类型,并返回自定义数据类型的对象
- 需要在项目中添加
jackson-databind
依赖项- 在
spring-boot-starter-web
中已经包含jackson-databind
- 在
- 需要开启注解驱动
- 在基于XML配置的Spring MVC项目中,需要在XML配置中添加
<
- 在基于XML配置的Spring MVC项目中,需要在XML配置中添加