Alternatively, load a Groovy bean definition script like the following from an external resource (e.g. an "applicationContext.groovy" file):
import org.hibernate.SessionFactory import org.apache.commons.dbcp.BasicDataSource beans { dataSource(BasicDataSource) { driverClassName = "org.hsqldb.jdbcDriver" url = "jdbc:hsqldb:mem:grailsDB" username = "sa" password = "" settings = [mynew:"setting"] } sessionFactory(SessionFactory) { dataSource = dataSource } myService(MyService) { nestedBean = { AnotherBean bean -> dataSource = dataSource } } }
With the following Java code creating the {@code GenericGroovyApplicationContext}(potentially using Ant-style '*'/'**' location patterns):
GenericGroovyApplicationContext context = new GenericGroovyApplicationContext(); context.load("org/myapp/applicationContext.groovy"); context.refresh();
Or even more concise, provided that no extra configuration is needed:
ApplicationContext context = new GenericGroovyApplicationContext("org/myapp/applicationContext.groovy");
This application context also understands XML bean definition files, allowing for seamless mixing and matching with Groovy bean definition files. ".xml" files will be parsed as XML content; all other kinds of resources will be parsed as Groovy scripts. @author Juergen Hoeller @author Jeff Brown @since 4.0 @see org.springframework.beans.factory.groovy.GroovyBeanDefinitionReader
|
|
|
|
|
|
|
|
|
|