在我的grails应用程序中,我有Java类(src / java)。我想访问我的域类并直接从Java类中使用GORM功能(如get(),findBy ...,save(),delete()等)。我知道,我可以在Spring IoC上做到这一点:例如,可以在我的Java类中添加grails服务:
public class SimpleJavaClass{
//...
@Autowired
private ExampleService exampleService;
//...
}
并在Spring之前连接此类的每个实例:
//...
GrailsApplication grailsApplication
//...
def simpleAction(){
def instance = new SimpleJavaClass()
grailsApplication.mainContext.autowireCapableBeanFactory.autowireBean(instance)
}
但是,是否有更合适的方法可以做到这一点?
最佳答案
使用Grails 2.0,当前的唯一方法是将域类打包到二进制插件中(请参阅http://grails.org/doc/2.0.x/guide/single.html#binaryPlugins)
然后,您可以依赖此二进制插件,并且由于它是预编译的,因此Java代码将看到许多GORM方法,这些方法已连接到字节代码中