falchion 发表于 2013-2-6 09:57:22

Spring的Beanfactory在jsp,servlet,web.xml等的配置

在web application 调用Spring的Beanfactory

1)配置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]
查看完整版本: Spring的Beanfactory在jsp,servlet,web.xml等的配置