如何解决如何在SpringBoot / Java代码中转储mongodatabase的当前状态?
我们如何从代码而不是命令中删除整个数据库?
例如,模型类testapi
:
public class testapi {
@Id
private int id;
private String status;
private ArrayList<SpotsStatus> cam_reports;
private long date;
// Constructors
public testapi(int id,String status,ArrayList<SpotsStatus> cam_reports,long date) {
this.id = id;
this.status = status;
this.cam_reports = cam_reports;
this.date = date;
}
public int getId() {
return id;
}
public void setId(int id) {
this.id = id;
}
public String getStatus() {
return status;
}
public void setStatus(String status) {
this.status = status;
}
public ArrayList<SpotsStatus> getCam_reports() {
return cam_reports;
}
public void setCam_reports(ArrayList<SpotsStatus> cam_reports) {
this.cam_reports = cam_reports;
}
public long getDate() {
return date;
}
public void setDate(long date) {
this.date = date;
}
}
这是我的模型课;我的存储库是:
public interface testRepository extends MongoRepository <testapi,Integer> {
}
在我的控制器中,我必须编写代码以转储数据库,还原数据库并删除数据库。
我的控制器类是:
@Rest Controller
@Request Mapping("/testapi")
public class testapiController {
@Autowired
private testRepository repo;
@Request Mapping(value = "/",method = RequestMethod.GET)
public List<testapi> getAllspots() {
return repo.findAll();
如何转储?代码应该是什么?
解决方法
您可以使用讨论的here解决方案:
使用MongoRepository's deleteAll()删除所有数据:testRepository.deleteAll()
使用MongoRepository's dropCollection()和createCollection()重新创建整个集合:
testRepository.dropCollection(testapi.class);
testRepository.createCollection(testapi.class);
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。