public class NutMvcListener extends Object implements javax.servlet.ServletContextListener, IocProvider
定义全局Ioc容器,并实现IocProvider接口,以便与@IocBy注解的融合.
本实现使用ComboIocLoader作为加载器,所以允许加载其他人员IocLoader定义
基本配置流程
1. 在web.xml声明本监听器
2. 在web.xml中声明一个param-name叫nutz-iocby,内容是传统ComboIocLoader的参数,用逗号分隔
2. 或者在/WEB-INF下放一个nutz.properties, 内容是nutz-iocby=XXXXXXXX
3. 在MainModule中声明@IocBy(type=NutMvcListener.class)
限定符和类型 | 字段和说明 |
---|---|
protected static Ioc |
ioc |
static String |
IOCBY |
protected PropertiesProxy |
pp |
static String |
PROP_LOCATION |
protected javax.servlet.ServletContext |
sc |
构造器和说明 |
---|
NutMvcListener() |
限定符和类型 | 方法和说明 |
---|---|
void |
contextDestroyed(javax.servlet.ServletContextEvent event)
容器销毁时,检查Ioc是否已经关闭,没有的话就关闭之.
|
void |
contextInitialized(javax.servlet.ServletContextEvent event) |
Ioc |
create(NutConfig config,
String[] args)
这里与IocBy结合起来.
|
protected void |
findConfig()
首先,载入需要的配置信息, 分别从nutz.properties和ServletContext的上下文获取.
|
protected void |
initIoc()
初始化Ioc容器,使用ComboIocLoader作为配置方式
|
static Ioc |
ioc()
返回全局Ioc对象,如果未经初始化, 这里就会抛出异常
|
public static String PROP_LOCATION
public static String IOCBY
protected javax.servlet.ServletContext sc
protected PropertiesProxy pp
protected static Ioc ioc
public static Ioc ioc()
public void contextInitialized(javax.servlet.ServletContextEvent event)
contextInitialized
在接口中 javax.servlet.ServletContextListener
protected void findConfig()
protected void initIoc()
public void contextDestroyed(javax.servlet.ServletContextEvent event)
contextDestroyed
在接口中 javax.servlet.ServletContextListener
public Ioc create(NutConfig config, String[] args)
create
在接口中 IocProvider
Copyright © 2017. All rights reserved.