作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在 Grails 4 中重新创建一个有效的 Grails 2.2.5 应用程序,以便了解新版本(以期在适当的时候迁移所有 2.2.x 应用程序)。到目前为止,我只从 src 目录中移动了几个 Groovy 类,但是我遇到了一个编译问题,该类显然不再存在于 Grails 4 中,即 org.codehaus.groovy.grails.commons。默认GrailsDomainClass。我使用它来遍历域类的持久属性(使用 persistentProperties
)。我将如何在 Grails 4 中执行此操作?即,获取域类的所有持久属性?
最佳答案
DefaultGrailsDomainClass
自 Grails 3.3.2 以来确实已弃用支持映射上下文 API。幸运的是,替换已弃用的实现非常简单。
注入(inject)grailsDomainClassMappingContext
您的服务或 Controller 中的 bean:
def grailsDomainClassMappingContext
然后通过提供其名称来获取持久实体:
def entity = grailsDomainClassMappingContext.getPersistentEntity(domainObjName)
在哪里
domainObjName
是一个字符串和
entity
是
org.grails.datastore.mapping.model.PersistentEntity
的一个实例.您还可以使用以下方法获取特定属性:
def property = entity.getPropertyByName(propertyName)
在哪里
propertyName
是一个字符串和
property
是
org.grails.datastore.mapping.model.PersistentProperty
的一个实例.
PersistentEntity
和
PersistentProperty
提供多种有用的方法来涵盖多种用途。
关于Grails 4 替代 DefaultGrailsDomainClass?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60819262/
我正在 Grails 4 中重新创建一个有效的 Grails 2.2.5 应用程序,以便了解新版本(以期在适当的时候迁移所有 2.2.x 应用程序)。到目前为止,我只从 src 目录中移动了几个 Gr
我正在尝试为基于角度的 CRUD 应用程序(脚手架,但客户端,使用角度)编写生成器 其中一部分包括从 GORM 中提取元信息 现在,显然,我已经碰壁了。 我想处理 ID 字段不是生成,而是由应用程序管
我是一名优秀的程序员,十分优秀!