Documentation ¶
Index ¶
- Constants
- func GetBeanName(bean SpringBean) string
- func GetTypeName(t reflect.Type) string
- type DefaultSpringContext
- func (ctx *DefaultSpringContext) AutoWireBeans() error
- func (ctx *DefaultSpringContext) FindBeanByName(name string) SpringBean
- func (ctx *DefaultSpringContext) FindBeanByType(i interface{}) SpringBean
- func (ctx *DefaultSpringContext) FindBeanDefinitionByName(name string) *SpringBeanDefinition
- func (ctx *DefaultSpringContext) FindBeanDefinitionsByType(t reflect.Type) []*SpringBeanDefinition
- func (ctx *DefaultSpringContext) FindBeansByType(i interface{})
- func (ctx *DefaultSpringContext) GetAllBeanNames() (names []string)
- func (ctx *DefaultSpringContext) GetBeanByType(i interface{})
- func (ctx *DefaultSpringContext) GetDefaultProperties(name string, defaultValue interface{}) (interface{}, bool)
- func (ctx *DefaultSpringContext) GetPrefixProperties(prefix string) map[string]interface{}
- func (ctx *DefaultSpringContext) GetProperties(name string) interface{}
- func (ctx *DefaultSpringContext) RegisterBean(bean SpringBean)
- func (ctx *DefaultSpringContext) RegisterBeanDefinition(d *SpringBeanDefinition)
- func (ctx *DefaultSpringContext) RegisterNameBean(name string, bean SpringBean)
- func (ctx *DefaultSpringContext) RegisterSingletonBean(bean SpringBean)
- func (ctx *DefaultSpringContext) RegisterSingletonNameBean(name string, bean SpringBean)
- func (ctx *DefaultSpringContext) SetProperties(name string, value interface{})
- func (ctx *DefaultSpringContext) ToSpringBeanDefinition(name string, bean SpringBean) *SpringBeanDefinition
- func (ctx *DefaultSpringContext) WireBean(bean SpringBean) error
- type SpringBean
- type SpringBeanDefinition
- type SpringBeanInitialization
- type SpringContext
Constants ¶
const ( Uninitialized = iota Initializing Initialized )
SpringBean 的初始化状态值
Variables ¶
This section is empty.
Functions ¶
Types ¶
type DefaultSpringContext ¶
type DefaultSpringContext struct {
// contains filtered or unexported fields
}
SpringContext 的默认版本 目前支持三种bean的命名方式: 1、slice bean 匿名注册使用 "bean#id" 作为 bean 的名称 2、struct ptr bean,以 PkgPath + struct name ,以 . 分割 作为 bean 的名称 3、自定义命名
func (*DefaultSpringContext) AutoWireBeans ¶
func (ctx *DefaultSpringContext) AutoWireBeans() error
自动绑定所有的 SpringBean
func (*DefaultSpringContext) FindBeanByName ¶
func (ctx *DefaultSpringContext) FindBeanByName(name string) SpringBean
根据 Bean 名称查找 SpringBean
func (*DefaultSpringContext) FindBeanByType ¶
func (ctx *DefaultSpringContext) FindBeanByType(i interface{}) SpringBean
根据 Bean 类型查找 SpringBean
func (*DefaultSpringContext) FindBeanDefinitionByName ¶
func (ctx *DefaultSpringContext) FindBeanDefinitionByName(name string) *SpringBeanDefinition
根据 Bean 名称查找 SpringBeanDefinition
func (*DefaultSpringContext) FindBeanDefinitionsByType ¶
func (ctx *DefaultSpringContext) FindBeanDefinitionsByType(t reflect.Type) []*SpringBeanDefinition
根据 Bean 类型查找 SpringBeanDefinition 数组
func (*DefaultSpringContext) FindBeansByType ¶
func (ctx *DefaultSpringContext) FindBeansByType(i interface{})
根据 Bean 类型查找 SpringBean 数组
func (*DefaultSpringContext) GetAllBeanNames ¶
func (ctx *DefaultSpringContext) GetAllBeanNames() (names []string)
获取所有的bean name
func (*DefaultSpringContext) GetBeanByType ¶
func (ctx *DefaultSpringContext) GetBeanByType(i interface{})
根据 Bean 类型查找 SpringBean, 并反射赋值
func (*DefaultSpringContext) GetDefaultProperties ¶
func (ctx *DefaultSpringContext) GetDefaultProperties(name string, defaultValue interface{}) (interface{}, bool)
获取属性值,如果没有找到则使用指定的默认值
func (*DefaultSpringContext) GetPrefixProperties ¶
func (ctx *DefaultSpringContext) GetPrefixProperties(prefix string) map[string]interface{}
获取指定前缀的属性值集合
func (*DefaultSpringContext) GetProperties ¶
func (ctx *DefaultSpringContext) GetProperties(name string) interface{}
获取属性值
func (*DefaultSpringContext) RegisterBean ¶
func (ctx *DefaultSpringContext) RegisterBean(bean SpringBean)
使用默认的名称注册 SpringBean 对象
func (*DefaultSpringContext) RegisterBeanDefinition ¶
func (ctx *DefaultSpringContext) RegisterBeanDefinition(d *SpringBeanDefinition)
通过 SpringBeanDefinition 注册 SpringBean 对象
func (*DefaultSpringContext) RegisterNameBean ¶
func (ctx *DefaultSpringContext) RegisterNameBean(name string, bean SpringBean)
使用指定的名称注册 SpringBean 对象
func (*DefaultSpringContext) RegisterSingletonBean ¶
func (ctx *DefaultSpringContext) RegisterSingletonBean(bean SpringBean)
使用默认的名称注册 SpringBean 对象
func (*DefaultSpringContext) RegisterSingletonNameBean ¶
func (ctx *DefaultSpringContext) RegisterSingletonNameBean(name string, bean SpringBean)
使用指定的名称注册 SpringBean 单例对象
func (*DefaultSpringContext) SetProperties ¶
func (ctx *DefaultSpringContext) SetProperties(name string, value interface{})
设置属性值
func (*DefaultSpringContext) ToSpringBeanDefinition ¶
func (ctx *DefaultSpringContext) ToSpringBeanDefinition(name string, bean SpringBean) *SpringBeanDefinition
SpringBean 转换为 SpringBeanDefinition 对象
func (*DefaultSpringContext) WireBean ¶
func (ctx *DefaultSpringContext) WireBean(bean SpringBean) error
绑定外部指定的 SpringBean
type SpringBeanDefinition ¶
type SpringBeanDefinition struct { Bean SpringBean Name string Init int Type reflect.Type Value reflect.Value }
定义 SpringBeanDefinition 类型
type SpringBeanInitialization ¶
type SpringBeanInitialization interface {
InitBean(ctx SpringContext)
}
SpringBean 初始化接口
type SpringContext ¶
type SpringContext interface { // 使用默认的名称注册 SpringBean 对象 RegisterBean(bean SpringBean) // 使用指定的名称注册 SpringBean 对象 RegisterNameBean(name string, bean SpringBean) // 使用默认的名称注册 Singleton SpringBean 对象 RegisterSingletonBean(bean SpringBean) // 使用指定的名称注册 Singleton SpringBean 对象 RegisterSingletonNameBean(name string, bean SpringBean) // 通过 SpringBeanDefinition 注册 SpringBean 对象 RegisterBeanDefinition(d *SpringBeanDefinition) // 根据 Bean 类型查找 SpringBean FindBeanByType(i interface{}) SpringBean // 根据 Bean 类型查找 GetBeanByType(i interface{}) // 根据 Bean 类型查找 SpringBean 数组 FindBeansByType(i interface{}) // 根据 Bean 类型查找 SpringBeanDefinition 数组 FindBeanDefinitionsByType(t reflect.Type) []*SpringBeanDefinition // 根据 Bean 名称查找 SpringBean FindBeanByName(name string) SpringBean // 根据 Bean 名称查找 SpringBeanDefinition FindBeanDefinitionByName(name string) *SpringBeanDefinition // 获取所有的bean name GetAllBeanNames() []string // 获取属性值 GetProperties(name string) interface{} // 设置属性值 SetProperties(name string, value interface{}) // 获取指定前缀的属性值集合 GetPrefixProperties(prefix string) map[string]interface{} // 获取属性值,如果没有找到则使用指定的默认值 GetDefaultProperties(name string, defaultValue interface{}) (interface{}, bool) // 自动绑定所有的 SpringBean AutoWireBeans() error // 绑定外部指定的 SpringBean WireBean(bean SpringBean) error }
定义 SpringContext 接口