Spring的Beanfactory在jsp,servlet,web.xml等的配置
在web application 调用Spring的Beanfactory1)配置web.xml
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd"><web-app> <context-param><param-name>contextConfigLocation</param-name> <!-- 配置加载的bean factory xml --><param-value> WEB-INF/applicationContext*.xml classpath:applicationContext-datasource.xml classpath:applicationContext-hibernate.xml classpath:applicationContext-dao.xml classpath:applicationContext-service.xml</param-value> </context-param> <listener><listener-class> org.springframework.web.context.ContextLoaderListener</listener-class> </listener></web-app>
2)Jsp页面中调用spring
org.springframework.beans.factory.BeanFactory beanFactory = (org.springframework.beans.factory.BeanFactory) pageContext.getServletContext().getAttribute(org.springframework.web.context.WebApplicationContext.ROOT_WEB_APPLICATION_CONTEXT_ATTRIBUTE);
3)Servlet中调用spring
ServletContext context = this.getServletContext();org.springframework.beans.factory.BeanFactory beanFactory = (org.springframework.beans.factory.BeanFactory) context.getAttribute(org.springframework.web.context.WebApplicationContext.ROOT_WEB_APPLICATION_CONTEXT_ATTRIBUTE);
4)ClassPath加载
ApplicationContext beanFactory = new ClassPathXmlApplicationContext( new String[] { "applicationContext-datasource.xml", "applicationContext-hibernate.xml", "applicationContext-service-freemarker.xml", "applicationContext-service.xml" });
页:
[1]