Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/305.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何将一个集合中的mongo id作为外键添加到另一个集合中_Java_Mongodb_Spring Boot_Mongo Collection - Fatal编程技术网

Java 如何将一个集合中的mongo id作为外键添加到另一个集合中

Java 如何将一个集合中的mongo id作为外键添加到另一个集合中,java,mongodb,spring-boot,mongo-collection,Java,Mongodb,Spring Boot,Mongo Collection,在我的SpringBoot应用程序中,我有一组TODO和一组课程。在应用程序视图中,我返回课程集合并显示我需要的任何课程。TODO存储为1个列表,表示所有当前TODO。我想做的是返回每门课程的TODO列表。因此,当视图打开时,应用程序将显示课程以及该课程的个人待办事项列表 是否有一种方法可以使用现有代码合并新功能。我已经创建了前端逻辑,并希望保留它。我最初的想法是将课程id添加到Todo.java,但这不起作用 Todo.java @Document(collection="todos") pu

在我的SpringBoot应用程序中,我有一组TODO和一组课程。在应用程序视图中,我返回课程集合并显示我需要的任何课程。TODO存储为1个列表,表示所有当前TODO。我想做的是返回每门课程的TODO列表。因此,当视图打开时,应用程序将显示课程以及该课程的个人待办事项列表

是否有一种方法可以使用现有代码合并新功能。我已经创建了前端逻辑,并希望保留它。我最初的想法是将课程id添加到
Todo.java
,但这不起作用

Todo.java

@Document(collection="todos")
public class Todo {
@Id
private String id;

@NotBlank
@Size(max=250)
@Indexed(unique=true)
private String title;

private Boolean completed = false;  

private Date createdAt = new Date();

public Todo() {
    super();
}

public Todo(String title) {
    this.title = title;
}   

public String getId() {
    return id;
}

public void setId(String id) {
    this.id = id;
}

public String getTitle() {
    return title;
}

public void setTitle(String title) {
    this.title = title;
}

public Boolean getCompleted() {
    return completed;
}

public void setCompleted(Boolean completed) {
    this.completed = completed;
}

public Date getCreatedAt() {
    return createdAt;
}

public void setCreatedAt(Date createdAt) {
    this.createdAt = createdAt;
}

@Override
public String toString() {
    return String.format(
            "Todo[id=%s, title='%s', completed='%s']",
            id, title, completed);
}       
}
@Repository
public interface TodoRepository extends MongoRepository<Todo, String> {
    public List<Todo> findAll();
    public Todo findOne(String id);
    public Todo save(Todo todo);
    public void delete(Todo todo);
}
TodoRepository.java

@Document(collection="todos")
public class Todo {
@Id
private String id;

@NotBlank
@Size(max=250)
@Indexed(unique=true)
private String title;

private Boolean completed = false;  

private Date createdAt = new Date();

public Todo() {
    super();
}

public Todo(String title) {
    this.title = title;
}   

public String getId() {
    return id;
}

public void setId(String id) {
    this.id = id;
}

public String getTitle() {
    return title;
}

public void setTitle(String title) {
    this.title = title;
}

public Boolean getCompleted() {
    return completed;
}

public void setCompleted(Boolean completed) {
    this.completed = completed;
}

public Date getCreatedAt() {
    return createdAt;
}

public void setCreatedAt(Date createdAt) {
    this.createdAt = createdAt;
}

@Override
public String toString() {
    return String.format(
            "Todo[id=%s, title='%s', completed='%s']",
            id, title, completed);
}       
}
@Repository
public interface TodoRepository extends MongoRepository<Todo, String> {
    public List<Todo> findAll();
    public Todo findOne(String id);
    public Todo save(Todo todo);
    public void delete(Todo todo);
}

courseid
添加到
todo
文档时遇到了什么问题?@Veeram我不确定如何将courseid添加到文档中,我遇到了语法错误。我是否应该将其添加为courseid的列表?使用dbref解决此问题