Spring开发web项目
web项目初始化Spring IOC容器:
当服务启动时,通过监听器初始化一次(Spring-web.jar已经提供)。
需要7个jar:spring-java6个jar+Spring-web.jar。
web项目启动时,会自动加载web.xml,因此在web.xml中加载监听器。(IOC容器初始化)
<!--IOC容器的位置-->
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>WEB-INF/applicationContext.xml</param-value>
</context-param>
<!--通过监听器初始化一次(Spring-web.jar已经提供)-->
<listener>
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class>
</listener>
拆分Spring配置文件
将多个配置文件加载:
(1)
<!--IOC容器的位置-->
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>
WEB-INF/applicationContext.xml
WEB-INF/applicationContext-Dao.xml
WEB-INF/applicationContext-Service.xml
WEB-INF/applicationContext-Controller.xml
</param-value>
</context-param>
(2)推荐
<context-param>
<param-name>contextConfigLocation</param-name>
<!--加载多个配置文件-->
<param-value>
WEB-INF/applicationContext.xml
WEB-INF/applicationContext-*.xml
</param-value>
</context-param>
(3)在主配置文件中加载其他文件
<import resource="applicationContext-Controller.xml"/> <import resource="applicationContext-Service.xml"/> <import resource="applicationContext-Dao.xml"/>
servlet容器与ioc容器连接问题。

//在初始化时获取ioc容器中的对象
@Override
public void init() throws ServletException {
// ApplicationContext context=new ClassPathXmlApplicationContext("applicationContext-Service.xml");
//web项目获取上下文对象
ApplicationContext context= WebApplicationContextUtils.getWebApplicationContext(this.getServletContext());
studentService= (IStudentService) context.getBean("studentService");
}