2012-12-23 36 views
0

我从MyBatis的插件文件引用:的Grails的MyBatis-插件验证位置

“当MyBatis的工作插件的‘域’类应该 放在src/Grails中,应用程序/域常规,而不是。为避免与GROM发生冲突,必须使用 ,因为MyBatis插件可与 现有的GORM域类共存。

那么,当我想要使用MyBatis插件使用Grails时,应该在哪里确认验证和约束?

回答

1

您可以向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) 

支持,这可能在未来的版本中添加。