- 浏览: 149991 次
- 性别:
- 来自: 武汉
文章分类
最新评论
-
mathlpz:
JSP_Struts标签 html:select option基本用法 -
phil09s:
还有一篇相当不错的教程:http://lavasoft.blo ...
commons-logging log4j的联系区别 -
phil09s:
灰常不错的教程,配合http://sammor.iteye.c ...
commons-logging log4j的联系区别
WebApplicationContext : org.springframework.web.context.ContextLoaderListener作用
- 博客分类:
- 每天的收获点点滴滴
如果您想要在自己所定义的Servlet类别中使用Spring的容器功能,则也可以使用 org.springframework.web.context.ContextLoaderListener,例如在web.xml中使用< listener>标签加以定义:
...
<listener>
<listener-class>
org.springframework.web.context.ContextLoaderListener
</listener-class>
</listener>
...
ContextLoaderListener预设会读取applicationContext.xml,您可以指定自己的定义档,只要在<context-param>中指定"contextConfigLocation"参数,例如:
...
<context-param>
<param-name>contextConfigLocation</param-name>
<param-value>/WEB-INF/beans-config.xml,
→ /WEB-INF/demo-service.xml</param-value>
</context-param>
...
接着您可以在自定义的Servlet中使用 org.springframework.web.context.support.WebApplicationContextUtils,从 ServletContext中取得org.springframework.web.context.WebApplicationContext,例如:
WebApplicationContext ctx =
WebApplicationContextUtils.
getRequiredWebApplicationContext(
this.getServletContext());
WebApplicationContext实作了ApplicationContext介面,是Spring专为Servlet的Web应用程式设计的 ApplicationContext实作类别,在取得WebApplicationContext之后,您可以利用它来取得Bean定义档中定义的 Bean实例,例如:
Date date = (Date) ctx.getBean("dateBean");
在不支援Listener设定的容器上(例如Servlet 2.2以更早的版本),您可以使用org.springframework.web.context.ContextLoaderServlet来取代上面的ContextLoaderListener的设定,例如:
...
<servlet>
<servlet-name>contextLoader</servlet-name>
<servlet-class>
org.springframework.web.context.ContextLoaderServlet
</servlet-class>
<load-on-startup>1</load-on-startup>
</servlet>
...
综合以上的叙述,撰写一个简单的范例来示范完整的组态方式,假设您撰写了一个简单的Servlet程式,作用为提供简单的报时功能,如下所示:
TimeServlet.java
package onlyfun.caterpillar; import java.io.*; import javax.servlet.*; import javax.servlet.http.*; import org.springframework.web.context.WebApplicationContext;import org.springframework.web.context. support.WebApplicationContextUtils; public class TimeServlet extends HttpServlet { public void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { WebApplicationContext ctx = WebApplicationContextUtils. getRequiredWebApplicationContext( this.getServletContext()); PrintWriter out = res.getWriter(); out.println(ctx.getBean("dateBean")); } }
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/taijianyu/archive/2008/10/29/3176263.aspx
这个Servlet中使用了WebApplicationContext来尝试取得dateBean,您可以在web.xml中定义ContextLoaderListener与Bean定义档的位置,例如:
web.xml
<?xml version="1.0" encoding="UTF-8"?><web-app xmlns="http://java.sun.com/xml/ns/j2ee" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee → http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" version="2.4"> <session-config> <session-timeout> 30 </session-timeout> </session-config> <context-param> <param-name>contextConfigLocation</param-name> <param-value>/WEB-INF/beans-config.xml</param-value> </context-param> <listener> <listener-class> org.springframework.web.context.ContextLoaderListener </listener-class> </listener> <servlet> <servlet-name>time</servlet-name> <servlet-class> onlyfun.caterpillar.TimeServlet </servlet-class> </servlet> <servlet-mapping> <servlet-name>time</servlet-name> <url-pattern>/time.do</url-pattern> </servlet-mapping> </web-app>
在<context-param>的"contextConfigLocation"属性中,设定了Bean定义档的位置与名称,Bean定义档的内容如下所示:
beans-config.xml
<?xml version="1.0" encoding="UTF-8"?><!DOCTYPE beans PUBLIC "-//SPRING/DTD BEAN/EN" "http://www.springframework.org/dtd/spring-beans.dtd"> <beans> <bean id="dateBean" class="java.util.Date" singleton="false"/></beans>
您可以连接至TimeServlet,结果会显示连接上的时间。
本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/taijianyu/archive/2008/10/29/3176263.aspx
发表评论
-
读取配置文件
2014-05-16 13:41 0package com.hundsun.hsacct.act ... -
Linux环境搭建系统
2013-05-20 10:09 01. VMware workstation ... -
Java 繁体化
2013-05-10 13:59 1369package com.xxyy.common; i ... -
Error : \Java\jdk1.6.0_17\lib\tools.jar was unexpected at this time
2012-02-14 21:26 1858when our application server fai ... -
findbugs ant 代码审核工具
2012-01-11 15:38 2991Findbugs 是一个静态分析工具,它检查类或者 JA ... -
commons-logging log4j的联系区别
2011-12-19 14:54 66091、Apache通用日志接口(commons-loggi ... -
Solaris 10 上网
2011-10-17 13:12 1181昨天在虚拟机里面装好了solaris操作系统,却上不了网,按照 ... -
Solaris 10 的安装【转载】
2011-10-17 10:22 2899Solaris 10 的安装------------- ... -
eclipse 提示 快捷键
2011-10-08 16:53 896eclipse3.3中把内容助手(content assist ... -
windows环境下SVN服务器环境的搭建
2011-07-04 22:42 1785一 环境 操作系统:windows2003 serve ... -
MongoDB的初次接触学习体验
2011-06-16 17:52 0待续。。。 -
win7免安装mysql配置使用
2011-06-12 11:29 3025win7 64位机 下载地址:http://www.mys ... -
如何让电脑发音帮你读英文
2010-08-28 18:22 3584[1]首先,在桌面单击右键,在旁拉菜单中选择“文本文档”,就会 ... -
[转载] String getBytes()
2010-08-02 14:35 1371public byte[] getBytes()使用平台默认的 ... -
正则表达式 java
2010-01-19 11:11 1079目前,正则表达式已经在很多软件中得到广泛的应用,包括*nix ... -
zk webapps下 文件 乱码
2010-01-06 10:30 182518328 [main] INFO lucene.Lucene ... -
SPRING 定时任务设置详解
2010-01-04 15:15 1177org.springframework.schedulin ... -
C3P0 连接池详细配置
2009-12-06 15:27 918<c3p0-config> <default ... -
一个web项目web.xml的配置中<context-param>配置是起什么作用的
2009-12-05 15:44 12291.启动一个WEB项目的时候,容器(如:Tomcat)会去读它 ... -
寻找项目的配置文件
2009-10-21 11:40 992try { String ur ...
相关推荐
org.springframework.web.context.ContextLoaderListener.class org.springframework.web.context.ContextLoaderServlet.class org.springframework.web.context.ServletConfigAware.class org.springframework.web....
at org.springframework.web.context.ContextLoaderListener.contextInitialized(ContextLoaderListener.java:49) at org.apache.catalina.core.StandardContext.listenerStart(StandardContext.java:3843) at org....
Web 应用程序使用 Spring Web 侦听器初始化,例如web.xml org.springframework.web.context.ContextLoaderListener 。 Spring Web 侦听器使用web.xml的contextConfigLocation上下文参数进行初始化。 此设置的...
<listener-class>org.springframework.web.context.ContextLoaderListener</listener-class> 这样, ContextLoaderListener 就会自动装配 spring 配置文件。 ContextLoaderListener 是 Spring 框架中一个非常重要的...
<listener-class>org.springframework.web.context.ContextLoaderListener ``` 3. **指定Spring配置文件位置**: 在`web.xml`中通过`contextConfigLocation`指定Spring配置文件的位置,通常是在WEB-INF目录下...
Spring框架提供了对Web应用的支持,其中包括`org.springframework.web.context.WebApplicationContext`接口。这个接口扩展了`ApplicationContext`,专门为Web应用设计,提供了处理HTTP请求和响应的能力。与传统的`...
<listener-class>org.springframework.web.context.ContextLoaderListener ``` `ContextLoaderListener`监听Web应用程序的启动和结束,它在服务器启动时加载`contextConfigLocation`指定的配置文件,并创建...
<listener-class>org.springframework.web.context.ContextLoaderListener <context-param> <param-name>contextConfigLocation classpath:applicationContext.xml; </context-param> ``` 这段配置告诉Web...
org.springframework.web.context.ContextLoaderListener 5. 通过工具获得应用上下文对象 使用WebApplicationContextUtils工具,我们可以获得应用上下文对象ApplicationContext,例如: ApplicationContext ...
org.springframework.web.context.ContextLoaderListener ``` 或者,使用 ContextLoaderServlet 可以增加以下配置信息: ```xml <servlet-name>context org.springframework.web.context....
在这个版本中,我们主要关注`spring-web`模块中的`org.springframework.web.context.ContextLoaderListener`类,它是Spring MVC应用的核心部分。 `ContextLoaderListener`是一个实现了`javax.servlet....
<listener-class>org.springframework.web.context.ContextLoaderListener <context-param> <param-name>contextConfigLocation <param-value>classpath:conf/spring/applicationContext.xml </context-param> `...
`ContextLoaderListener`创建的ApplicationContext存储在`ServletContext`的一个属性中,键为`"org.springframework.web.context.WebApplicationContext.ROOT"`,而`DispatcherServlet`创建的WebApplicationContext...
`import org.springframework.web.context.support.WebApplicationContextUtils;` `ApplicationContext ac1 = WebApplicationContextUtils.getRequiredWebApplicationContext(ServletContext sc);` `...
<plug-in className="org.springframework.web.struts.ContextLoaderPlugIn"/> ``` 为了自定义配置文件的位置,可以使用"contextConfigLocation"属性: ```xml <plug-in className="org.springframework.web....
<listener-class>org.springframework.web.context.ContextLoaderListener ``` 这里,`contextConfigLocation`参数用于指定Spring配置文件的位置,通常是`classpath:`开头,表示在类路径下查找。 5. **通过...
<listener-class>org.springframework.web.context.ContextLoaderListener ``` 2. **ContextLoaderServlet启动WebApplicationContext** 对于不支持容器监听器的旧版Web容器,可以使用ContextLoaderServlet,...
<listener-class>org.springframework.web.context.ContextLoaderListener ``` 4. **配置Filter代理或Servlet代理的mapping** 继续在`web.xml`中定义Filter代理或Servlet代理的mapping,指定其拦截的URL模式...
org.springframework.web.context.ContextLoaderListener ``` 在上面的代码中,我们使用了监听器来加载 Spring 的配置文件。 5. Spring WEB 模块的字符编码过滤器 在 Spring WEB 模块中,我们可以使用字符编码...
<listener-class>org.springframework.web.context.ContextLoaderListener <servlet-name>context <servlet-class>org.springframework.web.context.ContextLoaderServlet <load-on-startup>0 ``` - **...