在服务端的项目中,无论是控制器的方法正确的处理了请求,或是出现了异常由全局异常处理器进行处理响应,最终响应的结果都是String类型的,比如以“添加相册”为例,服务端响应的结果可能是:
添加相册成功
或
添加相册失败,相册名称已经被占用!
当客户端提交请求并获取响应结果时,得到的是以上结果中的某一种,不便于判断对与错,不利于客户端的程序走向不同的分支
所以,目前主流的解决方案是:服务端将向客户端响应JSON格式的结果,此JSON数据中通常包含1个数值,此数值是由服务器端与客户端约定好的一种状态码,另外,此JSON数据中还可以包含其它信息,例如提示文件(例如以上原本响应的字符串),例如:
{
"state":1,
"message":"添加相册成功!"
}
或
{
"state":0,
"message":"添加相册失败,相册名称已经被占用!"
}
在Spring Boot项目中,当需要响应JSON格式的字符串时,只需自定义类型,在此类型中设计响应结果中包含的数据属性,并在处理请求、处理异常的方法上使用此类型作为返回值类型即可!
@Data
public class JsonResult impl