Grails: как лучше всего использовать GORM напрямую из src / java? - PullRequest
1 голос
/ 15 марта 2012

В моем приложении Grails есть классы Java (src / java). И я хочу иметь доступ к моим классам домена и использовать функции GORM (такие как get (), findBy ..., save (), delete () и т. Д.) Непосредственно из моих классов Java. Я знаю, я могу сделать это с помощью Spring IoC: например, я могу добавить службу grails в мой класс Java:

public class SimpleJavaClass{

    //...    

    @Autowired
    private ExampleService exampleService;

    //...
}

И подключаем каждый экземпляр этого класса к Spring:

//...

GrailsApplication grailsApplication

//...

def simpleAction(){
    def instance = new SimpleJavaClass()
    grailsApplication.mainContext.autowireCapableBeanFactory.autowireBean(instance)
}

Но может быть, есть более подходящий способ сделать то же самое?

1 Ответ

4 голосов
/ 15 марта 2012

Используя Grails 2.0, единственный текущий способ - это упаковать ваши доменные классы в бинарный плагин (см. http://grails.org/doc/2.0.x/guide/single.html#binaryPlugins)

. Тогда вы можете зависеть от этого бинарного плагина, и поскольку он предварительно скомпилирован, код Java увидитмногие из методов GORM, которые связаны с байтовым кодом

...