如何获取application对象(ServletContext)

问题描述

下列代码是在业务系统启动时执行,将信息保存到application。public class MyContextListener implements ServletContextListener {public void contextDestroyed(ServletContextEvent arg0) {// TODO Auto-generated method stub}public void contextInitialized(ServletContextEvent arg0) {ServletContext application = arg0.getServletContext();application.setAttribute("a", "aaa");application.setAttribute("b", "bbb");System.out.println(application.getAttribute("a"));System.out.println(application.getAttribute("b"));}}下列是如何实现,请帮忙看一下??????处该如何填写或者,怎么实现在任何类中提取当前系统中的application(注:在不能获取到request、response、session的情况下实现)public class Test { public void getApplication() { ServletContext application = ??????;}}问题补充谢谢各位:)

解决方案

将application存到一个静态类中去
解决方案二:
晕,不好意思,看错了,不过意思差不多
解决方案三:
自己写个类继承ContextLoaderListener,获取到ApplicationContext,然后注入给一个工具类的静态变量,后面通过工具类来获取ApplicationContext。具体代码:/** * ContextLoaderListener子类. * 把ApplicationContext赋给SpringContextUtil的静态变量Context. */public class ContextLoaderListener extends org.springframework.web.context.ContextLoaderListener { public void contextInitialized(ServletContextEvent event) { ServletContext context = event.getServletContext(); super.contextInitialized(event); ApplicationContext ctx = WebApplicationContextUtils.getRequiredWebApplicationContext(context); SpringContextUtil.setApplicationContext(ctx); }}** * 保存由ContentextLoadListener载入的ApplicationContext 静态变量 * 并实现了BeanFactory接口的委托,简化客户代码调用。 */public class SpringContextUtil { private static ApplicationContext context; public static void setApplicationContext(ApplicationContext acx) { context = acx; } public static ApplicationContext getApplicationContext() { return context; } public static Object getBean(String name) throws BeansException { return context.getBean(name); } public static Object getBean(String name, Class requiredType) throws BeansException { return context.getBean(name, requiredType); } public static boolean containsBean(String name) { return context.containsBean(name); } public static boolean isSingleton(String name) throws NoSuchBeanDefinitionException { return context.isSingleton(name); } public static Class getType(String name) throws NoSuchBeanDefinitionException { return context.getType(name); } public static String[] getAliases(String name) throws NoSuchBeanDefinitionException { return context.getAliases(name); }}在web.xml里面配置spring的监听器 <!--Spring Context loader--> <listener> <listener class>com.ffcs.common.spring.ContextLoaderListener</listener-class> </listener>
解决方案四:
你原来是这个意思。。。逆行其道,像HTTPSERVLET是网络传输协议,并不是类传输,我想问你,那个APPLICATION的值,凭什么能传过类这儿来?你可以如此改造一下类的构造public test(ServletContext application){.....}将application的值传递过来

时间: 2024-12-21 17:32:28

如何获取application对象(ServletContext)的相关文章

ASP.NET中application对象的使用介绍

这篇文章主要介绍了ASP.NET中application对象的使用,需要的朋友可以参考下 Application对象的应用 1.使用Application对象保存信息 (1).使用Application对象保存信息 Application("键名") = 值 或 Application("键名",值) (2).获取Application对象信息 变量名 = Application("键名") 或:变量名 = Application.Item(&q

javascript asp教程第十一课--Application 对象_ASP基础

Overview: The Application Object represents a collection of ASP pages. The Application object has zero (0) properties, two (2) collections, two (2) methods, and two (2) events. Get Started: Below are a couple scripts for lesson11. <%@LANGUAGE="Jav

ASP.NET中application对象的使用介绍_实用技巧

Application对象的应用 1.使用Application对象保存信息 (1).使用Application对象保存信息 Application("键名") = 值 或 Application("键名",值) (2).获取Application对象信息 变量名 = Application("键名") 或:变量名 = Application.Item("键名") 或:变量名 = Application.Get("键

jsp内置对象入门(6) application对象详解

application是javax.servlet.ServletContext接口的实例,实际上表示的是整个Servlet的上下文. application对象的常用方法: 以上方法是application的特色方法,当然,除了以上的三个方法之外,对于属性的增加.取得和删除也有其应用的,setAttribute().getAttribute().removeAttribute(). 我们来一块学习表格中的三个方法. 取得绝对路径 取得一个项目的虚拟目录对应的绝对路径就要使用getRealPat

Struts2获取web对象的4种方式

Struts2获取web对象的4种方式 Struts2是如何获取web中 request.session.application的了,Struts2有4种方式获取web对象 1.通过ServletActionContext取HttpServletRequest对象 2.通过ServletRequestAware,(ServletResponseAware )来注入HttpServletRequest.(HttpServletResponse)对象 3.通过ActionContext取Map 4.

Struts2中的数据处理的三种方式对比(Action中三种作用域request,session,application对象)

1:在Action中如何获得作用域(request,session,application)对象: 取得Map(键值对映射集)类型的requet,session,application; 对数据操作的所有方法:(即把数据保存到域中) 主要使用的是方式2和方式3: 方式1:直接获取ServletApi,核心类是ServletActionContext提供的静态的方法; 1 package com.bie.lesson04; 2 3 import javax.servlet.ServletConte

ASP教程:简单学习掌握ASP Application 对象

application|对象|教程 在一起协同工作以完成某项任务的一组ASP文件被称作应用程序(application).ASP中的Application 对象用来将这些文件捆绑在一起. Application 对象 web上的某个应用程序可以是一组ASP文件.这些ASP文件一起协同工作来完成某项任务.ASP中的Application对象用来把这些文件捆绑在一起. Application对象用于存储和访问来自任何页面的变量,类似于session对象.不同之处在于,所有的用户分享一个Applica

Delphi中的TWebBrowser与MSHTML(2):获取window对象的时机

这是在页面下载完毕后即刻获取: unit Unit1; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, OleCtrls, SHDocVw, StdCtrls; type TForm1 = class(TForm) WebBrowser1: TWebBrowser; Button1: TButton; Button2: TButton; proce

php模仿asp Application对象在线人数统计实现方法

 这篇文章主要介绍了php模仿asp Application对象在线人数统计实现方法,通过一个比较简单的自定义函数实现这一功能,具有一定参考借鉴价值,需要的朋友可以参考下     本文实例讲述了php模仿asp Application对象在线人数统计实现方法.分享给大家供大家参考.具体实现方法如下:   代码如下: /* 用法: application('key','value'); //设置 key=value $value = application('key'); //获取 key的值 *