gpt4 book ai didi

grails - 每次重新编译都会清除Grails数据库

转载 作者:行者123 更新时间:2023-12-02 15:11:34 25 4
gpt4 key购买 nike

我有一个Grails项目,其中的开发环境使用内存中的H2数据库:

dataSource {
dbCreate = "create"
url = "jdbc:h2:mem:devDb;MVCC=TRUE;LOCK_TIMEOUT=10000"
}

我可以运行该应用程序(使用run-app),并将一些东西放入数据库中(例如,使用脚手架 Controller )。现在,如果我对源文件进行了更改,Grails会检测到更改,重新编译该类,然后...清除数据库!

我尝试在JDBC URL中使用 file而不是 mem,但是行为是相同的。我发现避免这种情况的唯一方法是将 dbCreate设置为 "update"而不是 "create",但这也不是我想要的,因为我在应用程序的 BootStrap中加载了夹具,因此当应用程序重新启动时,我会得到多个副本我的固定装置。

所以问题是:当它重新编译一个类时,如何防止Grails重新创建数据库?或者,每当它清除数据库时重新加载我的装置?

最佳答案

有一个类似的“问题” here

每当您对域类进行更改时,Grails都会重置数据库。

通常,您的域类不应经常更改,因此这不是一个大问题。遵循MVC模式,只需将逻辑放入 Controller 和服务中即可。
然后尝试一次性完成所有待处理的域类更改。

关于grails - 每次重新编译都会清除Grails数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14285991/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com