如何使用 spring boot 和 dynamodb 将关系 table 转换为单个 table

How to convert relational tables to one single table using spring boot and dynamodb

我有些困惑,想不出如何使用 dynamodb 来完成

如果我们有例如 学生 课程 老师

每个学生都订阅了很多课程 每个老师可以教授很多课程 每个课程可以有很多学生

我想要的访问模式是 1-通过id获取学生 2-通过id获取老师 3- 通过 id 获取课程 4-通过电子邮件或姓名获取学生 5- 通过电子邮件或姓名联系老师 6- 按名称获取课程

任何人都可以帮助我如何在 java spring 引导中完成此操作 我可以为每个实体编写实体,但我希望它们是一个单独的实体 table,我很困惑如何做到这一点

可能有更好的解决方案,但我会这样组织

Students
{
 uid: String,
 name: String,
 courses: <Courses<uid>>[],
}

Teachers
{
 uid: String,
 name: String,
 courses: <Courses<uid>>[],
}

Courses
{
 uid: String,
 name: String,
}

// get item by uid
var params = {
    TableName: "tableName",
    Key:{
        "uid": "Youruid",
    }
};

docClient.get(params);

// get item by name
var params = {
    TableName: "tableName",
    Key:{
        "name": "SomeName",
    }
};

docClient.get(params);