【问题标题】:How to dump the current state of the mongodatabase in SpringBoot/Java code?如何在 Spring Boot/Java 代码中转储 mongo 数据库的当前状态?
【发布时间】:2020-08-25 18:58:48
【问题描述】:

我们怎样才能从代码而不是命令中删除整个数据库??

例如模型类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();

如何转储?代码应该是什么?

【问题讨论】:

    标签: java mongodb spring-boot restore dump


    【解决方案1】:

    您可以使用here讨论的解决方案:

    使用MongoRepository's deleteAll() 删除所有数据:testRepository.deleteAll()

    使用MongoRepository's dropCollection() 和 createCollection() 重新创建整个集合:

    testRepository.dropCollection(testapi.class);
    testRepository.createCollection(testapi.class);
    

    【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-11-28
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-06-23
    • 2012-08-22
    • 1970-01-01
    相关资源
    最近更新 更多