任何不在域对象上使用metaClass的原因?如在
domainObjectInstance.metaClass.dynamicTransientGreeting =“Hello”
这会混淆hibernate吗?
答案 0 :(得分:2)
它根本不会混淆Hibernate,因为Hibernate不会看到它。 GORM只将“真实”属性映射到Hibernate属性。
这就是为什么id
和version
列以及从hasMany
声明生成的集合(例如users
生成的static hasMany = [users: User]
集合被添加到使用AST的实际字节码。如果它们只被添加到MetaClass中,它们就不会被看到而且不会持久。