后端如何返回“多层对象的json数据”
场景:
现在在做一个课程大纲的查询功能的时候,具体是用一个课程id查询出该课程的所有章节和小节。要求后端返回一个json数据,返回的数据如下“返回json数据示例”所示。
涉及知识点:
mysql、springBoot、mybatisPlus、了解vue生命周期、了解ElementUI基本使用,了解前后分离开发。
返回json数据示例:
{
"code": 20000,
"message": "成功",
"data": [
{
"id": 67,
"title": "第一章 初始java高级",
"sort": 1,
"children": [
{
"id": 42,
"title": "第一节 什么是java高级",
"isFree": 0,
"sort": 1,
"videoSourceId": null
},
{
"id": 43,
"title": "第二节 java高级能实现什么功能",
"isFree": 0,
"sort": 2,
"videoSourceId": null
}
]
},
{
"id": 68,
"title": "第二章 代码实现一个小案例",
"sort": 2,
"children": []
}
]
}
数据库设计:
(1)课程表
(2)章节表
(3)小节表
代码实现:
后端代码:
(1)统一返回结果类Result
//统一返回结果类
@Data
public class Result<T> {
private Integer code; //状态码
private String message; //返回状态信息(成功 失败)
private T data; //返回数据
public Result() {}
//成功的方法,有data数据
public static<T> Result<T> ok(T data) {
Result<T> result = new Result<>();
if(data