在我的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)
}
但是可能有更合适的方法来做同样的事情吗?
答案 0 :(得分:4)
使用Grails 2.0,目前唯一的方法是将域类打包成二进制插件(参见http://grails.org/doc/2.0.x/guide/single.html#binaryPlugins)
然后您可以依赖此二进制插件,因为它是预编译的,Java代码将看到许多连接到字节代码的GORM方法