gpt4 book ai didi

hibernate - 如何在Grails 3中覆盖DomainClass getter

转载 作者:行者123 更新时间:2023-12-02 15:40:55 27 4
gpt4 key购买 nike

我正在将Grails 2应用程序升级到3.3.10,我们有很多未调用的自定义 setter/getter 。许多具有可空值的后备逻辑。

Color getFavColor(){
if(!favColor){
return "black"
}

return favColor
}

编辑:添加了实际方法
Vendor getMarketPlaceVendor() {
if (marketPlaceVendor) {
return marketPlaceVendor
}
return campaign?.marketplaceVendor
}

进入代码似乎HibernateUtils正在直接访问该属性,我还是找不到解决该问题的方法吗? def propertyValue = reflector.getProperty(thisObject, propertyName)
1)我缺少快速修复程序吗?

2)这里的理想模式是什么?我是新手,想知道是否应该将类似的逻辑转移到服务中。

Grails 3.3.10 |休眠5 | Gorm 6.1.12。发布

最佳答案

GORM 6.1默认使用字段访问,这意味着在通过反射实例读取和写入数据时使用字段。

如果您希望继续使用属性访问,可以通过更改配置中的默认映射来进行配置:

import javax.persistence.*
grails.gorm.default.mapping = {
'*'(accessType: AccessType.PROPERTY)
}

直接从我们的用户指南 http://gorm.grails.org/6.1.x/hibernate/manual/上获取。

希望对您有所帮助。

关于hibernate - 如何在Grails 3中覆盖DomainClass getter,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60943144/

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