SpringBoot响应数据封装和异常数据响应

47 阅读2分钟

原因

随着市场上软件功能越来越完善,前后端分工也更加明确,为了减少前后端沟通成本,目前市面上前端开发使用vs居多,后端则是idea开发,这就需要实现前后端数据相互访问,为了解决这一问题使用JSON格式的数据完成前后端数据访问沟通。
JSON格式如下

图片.png

在如上格式中如果基于Restful API格式开发,则可以在传递数据资源我们不需要以JSON,如使用发送数据方式的GET,PUT,POST,DELETE等这些发送数据都是通过SpringBoot底层对传输数据封装,可以直接通过实体bean来传输。

接下来我们来说说如何响应数据封装。
先创建一个SpringBoot项目,在pom文件中导入核心依赖lombok如下所示

图片.png

编写异常处理类

图片.png

在controller层对数据进一步处理

图片.png

在将controller层处理数据封装发送到前端 使用的@RestController注解包含@Component和@Controller注解- @RestControllerAdvice注解包含了@ResponseBody注解,异常处理完之后给调用方输出一个JSON格式的封装数据。

  • @RestControllerAdvice注解有一个basePackages属性,该属性用来拦截哪个包中的异常信息,一般不指定,拦截项目工程中的所有异常。

  • 在方法上通过@ExceptionHandler注解来指定具体的异常,在方法中处理该异常信息,最后将结果通过统一的JSON结构体返回给调用者。

小结

在使用SpringBoot或其他项目中,统一的报文格式和统一的异常处理都是必须的。本篇文章介绍了基于SpringBoot的实现,如果你的项目中采用了其他的技术栈,则可考虑对应的处理方式。同时,日常中很多类似的功能都可以统一进行处理,避免大量无效的硬编码。