Spring起步加载bean 得到servletContext 获取数据源

Spring启动加载bean 得到servletContext 获取数据源
web启动
servlet启动 1--spring容器启动  2--加载自己的servlet
也就对应初始化操作:
1--在bean中进行初始化操作
2--等spring容器启动完毕,在servlet中进行初始化

1--在bean中进行初始化
    加载bean的时候可以得到serletContext,但是
WebApplicationContext wac=WebApplicationContextUtils.getWebApplicationContext(servletConfig);   
无法获取
这个时候可以在这个bean中注入数据源,且该bean不需要继承其它类
添加DataSource属性即可.

2--在servlet中进行初始化
   在web.xml中配置一下就可以了,init(ServletConfig servletConfig)可以得到
servletConfig,
WebApplicationContext wac=WebApplicationContextUtils.getWebApplicationContext(servletConfig); 这个也可以得到,因为spring容器已经初始化完毕了
如是getBean()就可以得到数据源了


<bean id="initSpringServletContext" class="com.isoftstone.telesales.util.InitSpringServletContext">
		<property name="dataSource" ref="dataSource" />
</bean>



import org.springframework.web.context.ServletContextAware;

public class InitSpringServletContext implements ServletContextAware {
private static final Logger log = Logger
			.getLogger(InitSpringServletContext.class);
private DataSource dataSource;


public void setServletContext(ServletContext servletContext) {
   //这里就已经得到了servletContext,
   //这个值是等配置文件的所有属性都set以后开始初始化的
}

public DataSource getDataSource() {
		return dataSource;
	}

	public void setDataSource(DataSource dataSource) {
		this.dataSource = dataSource;
	}