1
我對mongo很新,所以這可能只是我不瞭解如何設置集合。我有2個域對象,爲了簡單起見,我已將它們分解爲基本內容。Spring Boot MongoDb Collections
Post.java
@Document
public class Post {
@Id
private BigInteger id;
private String title;
private String body;
private String teaser;
private String slug;
private Date postedOn;
private Author author;
public Post(){
}
// getters & setters
}
Author.java
@Document
public class Author {
private BigInteger id;
private String firstName;
private String lastName;
private String email;
@DBRef
private List<Post> posts;
public Author(){
}
// getters and setters
}
我有一個被調用的一些數據加載到數據庫的方法。
@PostConstruct
private void initDatabase(){
authorRepository.deleteAll();
Author dv = new Author();
dv.setFirstName("Dan");
dv.setLastName("Vega");
dv.setEmail("[email protected]");
authorRepository.save(dv);
postRepository.deleteAll();
Post post = new Post();
post.setTitle("Spring Data Rocks!");
post.setSlug("spring-data-rocks");
post.setTeaser("Post Teaser");
post.setBody("Post Body");
post.setPostedOn(new Date());
post.setAuthor(dv);
postRepository.save(post);
}
當我從控制檯運行mongo並顯示集合時,我看到了帖子和作者集合。
當我運行db.post.find()後包含author對象
{ "_id" : ObjectId("5666201fd4c6bcfd2f4caa90"), "_class" : "com.therealdanvega.domain.Post", "title" : "Spring Data Rocks!", "body" : "Post Body", "teaser" : "Post Teaser", "slug" : "spring-data-rocks", "postedOn" : ISODate("2015-12-08T00:11:11.090Z"), "author" : { "_id" : ObjectId("5666201fd4c6bcfd2f4caa8f"), "firstName" : "Dan", "lastName" : "Vega", "email" : "[email protected]" } }
但是當我運行db.author.find()我沒有看到在那裏收集後。
{ "_id" : ObjectId("5666201fd4c6bcfd2f4caa8f"), "_class" : "com.therealdanvega.domain.Author", "firstName" : "Dan", "lastName" : "Vega", "email" : "[email protected]" }
有沒有人知道我失蹤了?
給了一個嘗試,但它的滿腹牢騷。 http://pastebin.com/raw.php?i=r199RLDP – cfaddict
@cfaddict我使用init編輯我的代碼的帖子列表 – khanou
我看你做了什麼沒有。我把它移到了構造函數中,但現在這似乎正在工作。謝謝您的幫助!完全錯過了那一個。 – cfaddict