我從MyBatis的插件文件引用:的Grails的MyBatis-插件驗證位置
「當MyBatis的工作插件的‘域’類應該 放在src/Grails中,應用程序/域常規,而不是。爲避免與GROM發生衝突,必須使用 ,因爲MyBatis插件可與 現有的GORM域類共存。
那麼,當我想要使用MyBatis插件使用Grails時,應該在哪裏確認驗證和約束?
我從MyBatis的插件文件引用:的Grails的MyBatis-插件驗證位置
「當MyBatis的工作插件的‘域’類應該 放在src/Grails中,應用程序/域常規,而不是。爲避免與GROM發生衝突,必須使用 ,因爲MyBatis插件可與 現有的GORM域類共存。
那麼,當我想要使用MyBatis插件使用Grails時,應該在哪裏確認驗證和約束?
您可以向Grails中的任何Groovy類添加@Validateable註釋,並且您將能夠驗證它...該插件當前不檢查任何驗證錯誤,因此您必須自己實現該代碼。
來自官方的Grails的文檔:
類,其定義靜態約束財產,註釋 與@Validateable可以通過框架進行validateable
http://grails.org/doc/2.1.0/guide/validation.html#validationNonDomainAndCommandObjectClasses
你甚至可以編寫自定義MyBatis攔截器(請參閱https://github.com/fzilic/Grails-MyBatis/blob/master/src/groovy/org/grails/plugins/mybatis/locking/OptimisticLockingInterceptor.groovy)並在SqlSession創建後註冊它...
目前MyBatis的插件不支持註冊自定義攔截器在它的配置,但它們可以被添加到攔截器鏈
def factory = GrailsApplication.mainContext.getBean("sqlSessionFactoryBean_dataSource")
factory.configuration.interceptorChain.addInterceptor(Interceptor)
支持,這可能在未來的版本中添加。