gpt4 book ai didi

hibernate - 如何在 Grails 中暂时禁用只读二级缓存 hibernate 策略?

转载 作者:行者123 更新时间:2023-12-03 08:14:32 25 4
gpt4 key购买 nike

在我的 grails 应用程序中,用户永远不会更改我的某些域类。

但是,有时需要进行一些维护工作,管理员应该能够不时创建/编辑几个实例(假设每年两次)。

我想为这些域类设置只读二级缓存策略(静态映射= {缓存使用:'只读'})并且我希望能够“禁用”(在非常特殊的情况下)只读策略,以便通过 Grails 脚手架编辑 View 更新某些实例。

这可能吗?你建议我做什么?

编辑:我正在实现的解决方案是 Pascal 和 Burt 答案的混合(请参阅评论)。这两个答案都很棒并且很有帮助。所以我在选择接受的答案时遇到了两难!不管怎样,谢谢你。

最佳答案

这可能是可能的,但很可能不是微不足道的。我会使用 groovy.sql.Sql 直接插入。您失去了验证,但您可以创建实例并验证它们,但不能调用 save()。如果没问题的话就进行 SQL 插入,例如

def thing = new Thing(params)
if (thing.validate()) {
new Sql(dataSource).executeInsert(
"insert into thing(name) values(?)", [params.name])
}
else {
// report validation error
}

关于hibernate - 如何在 Grails 中暂时禁用只读二级缓存 hibernate 策略?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2238695/

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