类 GenericGroovyApplicationContext
- java.lang.Object
- org.springframework.core.io.DefaultResourceLoader
- org.springframework.context.support.AbstractApplicationContext
- org.springframework.context.support.GenericApplicationContext
- org.springframework.context.support.GenericGroovyApplicationContext
 
 
 
 
- 所有已实现的接口:
- groovy.lang.GroovyObject,- Closeable,- AutoCloseable,- BeanFactory,- DisposableBean,- HierarchicalBeanFactory,- ListableBeanFactory,- BeanDefinitionRegistry,- ApplicationContext,- ApplicationEventPublisher,- ConfigurableApplicationContext,- Lifecycle,- MessageSource,- AliasRegistry,- EnvironmentCapable,- ResourceLoader,- ResourcePatternResolver
 - public class GenericGroovyApplicationContext extends GenericApplicationContext implements groovy.lang.GroovyObject An- ApplicationContextimplementation that extends- GenericApplicationContextand implements- GroovyObjectsuch that beans can be retrieved with the dot de-reference syntax instead of using- AbstractApplicationContext.getBean(java.lang.String).- Consider this as the equivalent of - GenericXmlApplicationContextfor Groovy bean definitions, or even an upgrade thereof since it seamlessly understands XML bean definition files as well. The main difference is that, within a Groovy script, the context can be used with an inline bean definition closure as follows:- import org.hibernate.SessionFactory import org.apache.commons.dbcp.BasicDataSource def context = new GenericGroovyApplicationContext() context.reader.beans { dataSource(BasicDataSource) { // <--- invokeMethod driverClassName = "org.hsqldb.jdbcDriver" url = "jdbc:hsqldb:mem:grailsDB" username = "sa" // <-- setProperty password = "" settings = [mynew:"setting"] } sessionFactory(SessionFactory) { dataSource = dataSource // <-- getProperty for retrieving references } myService(MyService) { nestedBean = { AnotherBean bean -> // <-- setProperty with closure for nested bean dataSource = dataSource } } } context.refresh()- 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 - 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. - 从以下版本开始:
- 4.0
- 作者:
- Juergen Hoeller, Jeff Brown
- 另请参阅:
- GroovyBeanDefinitionReader
 
- 嵌套类概要- 从类继承的嵌套类/接口 org.springframework.core.io.DefaultResourceLoader- DefaultResourceLoader.ClassPathContextResource
 
 - 字段概要- 从类继承的字段 org.springframework.context.support.AbstractApplicationContext- APPLICATION_EVENT_MULTICASTER_BEAN_NAME, LIFECYCLE_PROCESSOR_BEAN_NAME, logger, MESSAGE_SOURCE_BEAN_NAME
 - 从接口继承的字段 org.springframework.beans.factory.BeanFactory- FACTORY_BEAN_PREFIX
 - 从接口继承的字段 org.springframework.context.ConfigurableApplicationContext- CONFIG_LOCATION_DELIMITERS, CONVERSION_SERVICE_BEAN_NAME, ENVIRONMENT_BEAN_NAME, LOAD_TIME_WEAVER_BEAN_NAME, SYSTEM_ENVIRONMENT_BEAN_NAME, SYSTEM_PROPERTIES_BEAN_NAME
 - 从接口继承的字段 org.springframework.core.io.ResourceLoader- CLASSPATH_URL_PREFIX
 - 从接口继承的字段 org.springframework.core.io.support.ResourcePatternResolver- CLASSPATH_ALL_URL_PREFIX
 
 - 构造器概要- 构造器 - 构造器 - 说明 - GenericGroovyApplicationContext()- GenericGroovyApplicationContext(Class<?> relativeClass, String... resourceNames)Create a new GenericGroovyApplicationContext, loading bean definitions from the given resource locations and automatically refreshing the context.- GenericGroovyApplicationContext(String... resourceLocations)Create a new GenericGroovyApplicationContext, loading bean definitions from the given resource locations and automatically refreshing the context.- GenericGroovyApplicationContext(Resource... resources)Create a new GenericGroovyApplicationContext, loading bean definitions from the given resources and automatically refreshing the context.
 - 方法概要- 所有方法 实例方法 具体方法 - 修饰符和类型 - 方法 - 说明 - groovy.lang.MetaClass- getMetaClass()- Object- getProperty(String property)- GroovyBeanDefinitionReader- getReader()Exposes the underlying- GroovyBeanDefinitionReaderfor convenient access to the- loadBeanDefinitionmethods on it as well as the ability to specify an inline Groovy bean definition closure.- Object- invokeMethod(String name, Object args)- void- load(Class<?> relativeClass, String... resourceNames)Load bean definitions from the given Groovy scripts or XML files.- void- load(String... resourceLocations)Load bean definitions from the given Groovy scripts or XML files.- void- load(Resource... resources)Load bean definitions from the given Groovy scripts or XML files.- void- setEnvironmentR