@Configuration
public class LoadDatabase {
@Bean
CommandLineRunner initDb(MyClassRepository repository) {
// create an instance of your @Document annotated class
MyClass myDocument = new MyClass();
myDocument = repository.insert(myDocument);
repository.delete(myDocument);
}
}
2条答案
按热度按时间mw3dktmi1#
在您至少插入一个文档之前,不会创建新的收藏。请参阅文档Create Collection
hfyxw5xn2#
在整个Spring中,您可以通过两种方式来实现这一点。我在Spring2.1.7中测试了下面的说明。
只要有一个@Document类,Spring就不会在Mongo中创建集合。但是,如果您执行以下操作,它将创建一个集合:
1.您有一个要在集合中编制索引的字段,并在Java类中对其进行了注解。例如。
1.为集合创建存储库:
如果您不需要/不想要索引,第二种方法是添加一些在启动时运行的代码,在集合中添加一个伪值,然后再次删除它。
确保您的Document类有一个正确类型的字段(默认情况下是字符串),用
@Id
注解,以MapMongo的_id
字段。