注入的域类方法在哪里,如Grails / GORM中定义的isDirty,save等?

时间:2015-03-09 03:01:01

标签: grails gorm

我遇到一个问题,即isdirty没有识别出对象已经发生了变化,即使我可以通过它具有的调试器非常清楚地看到它。我想看看源代码,但我似乎无法跟踪源代码,并且调试器不会进入它(我假设因为它是通过某种AST魔法处理的)。

我检查了git-core,但是“find.-type f | xargs grep -il isDirty”没有结果。

我可以在哪里跟踪此代码?

1 个答案:

答案 0 :(得分:2)

来自GormInstanceApi(和GormStaticApiGormValidationApi等)和单个GORM实现的方法中的AST连接可能是那些(当前只有Hibernate实现)的子类。

例如,Hibernate 3实现是here,Hibernate 4实现在grails-datastore-gorm-hibernate4项目中的同名类中(大多数Hibernate代码都在grails-datastore-gorm-hibernate-core中项目,但由于更改了接口,一些是在两个顶级项目中。)