首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

如何在Struts2工厂类中获取ServletContext

在Struts2工厂类中获取ServletContext,可以通过以下步骤实现:

  1. 首先,需要在Struts2的配置文件(struts.xml)中配置一个拦截器,用于获取ServletContext。在拦截器中,可以通过实现Interceptor接口的方法来获取ServletContext对象。
  2. 创建一个类,实现Interceptor接口,并重写其方法。在方法中,可以通过ActionContext类的静态方法getContext()获取ActionContext对象,然后通过getServletContext()方法获取ServletContext对象。
  3. 创建一个类,实现Interceptor接口,并重写其方法。在方法中,可以通过ActionContext类的静态方法getContext()获取ActionContext对象,然后通过getServletContext()方法获取ServletContext对象。
  4. 在struts.xml文件中配置拦截器,并将其应用到需要获取ServletContext的地方。可以在全局拦截器栈中配置,或者在具体的Action中配置。
  5. 在struts.xml文件中配置拦截器,并将其应用到需要获取ServletContext的地方。可以在全局拦截器栈中配置,或者在具体的Action中配置。
  6. 在需要获取ServletContext的地方,可以直接使用ServletContext对象进行操作。
  7. 在需要获取ServletContext的地方,可以直接使用ServletContext对象进行操作。

通过以上步骤,就可以在Struts2工厂类中获取ServletContext对象,并进行相应的操作。

页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

Java面试分享(题目+答案)

1)ActionContext是当前的Action的上下文环境, 通过ActionContext可以 获取到request、session、ServletContext等 与Action有关的对象的引用...; 2)ServletContext是域对象, 一个web应用只有一个ServletContext, 生命周期伴随整个web应用; 3)pageContext是JSP的最重要的一个内置对象...: 8)在struts2配置文件引用ognl表达式 , 引用值栈的值 ,此时使用的"$",而不是#或者%; 11.Struts2的拦截器有什么用...Struts2的这种设计属于无侵入式设计; 2)拦截器, 实现参数拦截注入等功能; 3)类型转换器, 可以把特殊的请求参数转换成需要的类型; 4)多种表现层技术, :JSP、freeMarker...在表示的过程可以使用Struts2 框架 继承的标签。

1.3K30
  • 【Struts】Struts2在Action获得Servlet对象(RequestResponseSessionServletContext)的四种方法

    参考自:http://blog.csdn.net/softimes/article/details/7084984 在struts1.x Action 的execute方法,有四个参数,其中两个就是...而在Struts2,并没有任何参数。 因此,就不能简单地从execute方法获得HttpServletResponse或HttpServletRequest对象了。...但在Struts2 Action仍然有很多方法可以获得这些对象。 下面就列出四种获得这些对象的方法。...1、Action继承Struts2 的Servlet*Aware 拦截器 这种方式要求Action继承org.apache.struts2.interceptor对应的对象,:HttpServletResponse...servletContext = ServletActionContext.getServletContext(); 利用ServletContext可以获取项目在磁盘的绝对路径,可以用于上传下载文件时的参数

    42620

    Struts2 转换器

    实例 若 Action 实现了 ValidationAware 接口,且含有 result 元素,那么当我们在一个类型为 Integer 的字段输入一串字符串(比如 字母),Struts2 将会报错...如上所示,其中 Action - Conversion 实现了 ActionSupport 也可以实现 ValidationAware 接口的一样的效果是因为 ActionSupport 实现了...在对应的 Action 所在的包中新建 ActionClassName.properties 文件,ClassName 即为包含着输入字段的 Action 名 在属性文件添加键值对以配置错误消息...如上,当将字段写在 Action ,此时的配置文件就应该为 SelfConversion-converter.properties,当将 Action 的字段包装为一个 Customer 时,配置文件就与...servletContext = ServletActionContext.getServletContext(); String pattern = servletContext.getInitParameter

    62620

    struts2面试整理

    ) servletConfig(获取ServletApo) params(动态参数注入) validation(输入验证 声明式验证) 3. struts2的优点 实现了mvc模式 层次结构清晰,...ActionContext、ServletContext、pageContext的区别?...ActionContext是当前Action的上下文环境,通过ActionContext可以获取到request、session、ServletContext等与Action有关的对象的引用 ServletContext...是域对象,一个web应用只有一个ServletContext,生命周期伴随整个web应用; pageContext是JSP的最重要的一个内置对象,可以通过pageContext获取其他域对象的应用,...自定义拦截器 编写一个继承MethodFilterInterceptor struts2.xml声明拦截器 struts2.xml声配置拦截器 , 当指定自定义拦截器时默认拦截器会失效,所以还要显示的在指定一次

    57700

    Struts2笔记

    搭建Struts2的开发环境: a、拷贝jar包到应用的构建路径Struts2的发行包: apps\struts_blank.war b、在web.xml对核心控制器进行配置 ?...第一个Struts2的入门案例 a、建立一个hello.jsp的页面 ? b、修改struts2的默认配置文件:struts.xml,增加以下内容 ? c、建立动作和动作方法 ?...Struts2的配置文件的位置和加载顺序 一、default.properties:在struts2-core-**.jar包的org.pache.struts2.default.properties...推荐) 五、struts.properties:在你应用的构建路径(程序员进行配置的地方) 六、web.xml:此处也可以对struts2框架进行配置(不建议。...simple等 struts.objectFactory = spring 指定实例化动作工厂(和Spring集成时用) struts.enable.DynamicMethodInvocation

    38030

    何在非Spring容器管理的中注入获取 Spring容器的 Bean?

    何在非Spring容器管理的中注入/获取 Spring容器的 Bean? 前言:此文仅限新手入行,大佬回避。...什么是被Spring容器管理的? 只要是被称之为Bean的就是被Spring容器管理的。...不了解的可以看看小简写的这一篇: 将Bean交给Spring容器管理的几种方式 在非Spring管理的怎么办? 有时候我们就是需要在非Spring管理的中使用Bean怎么办呢?...比如我这一篇: 踩坑篇之WebSocket实现无法使用@Autowired注入对象 解决方法 我们定义一个上下文类,在Spring将Bean全部扫描完成后,我们去使用去实现ApplicationContextAware...接口,重写setApplicationContext方法,获取到ApplicationContext数据后,放到静态属性

    4.2K40

    struts2随笔

    6、Action访问Servlet API的方法: struts2提供了一个ActionContextstruts2的action可以通过该类访问Servlet API。...ServletContext getServletContext()//获取ServletContext对象 9、struts.xml的命名空间 命名空间有一个级别,假设请求的url为"/bookservice...("user") attr对象:该对象依次搜索如下对象的属性:PageContext、HttpServletRequest、HttpSession、ServletContext 21、OGNL的集合操作...文件可以添加多行: = ,这时属性名、转换器都要使用完整名,包括包名。...25、struts2型转换的错误处理 Struts 2提供了一个名为conversionError的拦截器,该拦截器被注册在默认的拦截器栈,查看struts-default.xml文件如下: <interceptor-stack

    1K00

    Struts2框架学习之二

    尽管 Action和 Servlet api解耦会带来很多好处,然而在 Action完全不访问 Servlet Api几乎是不可能的,在实现业务逻辑时,经常要访问 Servlet的对象, session...●  static ServletContext getServletContext ( ) :获取web应用的 ServletContext 对象。   ...获取 */ import java.util.Arrays; import java.util.Map; import java.util.Set; import javax.servlet.ServletContext...封装到一个 Javabean,然后将 Javabean传递给业务层。那么这些操作Struts2已经替我们都想好了。 Struts2将数据的封装分成两大类,一被称为是属性驱动,一被称为是模型驱动。...下面使用一个示例来展示用表达式封装将获取到的表单数据封装到不同的实体: 首先在src目录下创建com.Kevin.entity包,在包创建两个实体: User实体: package com.Kevin.entity

    74420

    Struts2之Action访问Servlet API

    Action访问Servlet API 本人独立博客https://chenjiabing666.github.io Struts2并未直接和Servlet API耦合,这是Struts2的一个改良之处...get(key) 返回ActionContext存放的键值对的值 其实这里获取的是ServletHttpServletRequest对象的属性 Object put(key,value) 向ActionContext...put,获取属性用get Map getApplication()返回一个Map对象,不过这个模拟了ServletServletContext对象的方法。...key-value转换成属性名,属性值 使用 如果想要使用这个,当然需要实例化的对象,其中提供了一个获取对象的静态方法,就是上面方法的第一个 我们在Action方法中使用这个设置request域,session...()获取HttpServletResponse对象 ServletContext getServletContext()获取ServletContext对象 使用 我们在Action中使用 public

    1.3K50

    SSH框架之Spring+Struts2+Hibernate整合篇

    CustomerAction 在struts.xml配置配置的 1. Action对象由Struts2框架创建的....2.4保证struts2框架能够在web工程独立运行 2.4.1第一步:拷贝struts2的必备jar包 要把画红线的jar包删掉,因为hibernate中有个高版本的。...答案: ServletContext对象创建了,就表示当前应用已经被服务器加载了。 问题: 我们怎么知道ServletContext对象创建了呢?...它是ServletContextListener接口的实现,负责监听ServletContext对象的创建,为我们创建容器,监听ServletContext对象的销毁,销毁容器。...创建的 // 对象工厂,通过name自动装配对象 customerService(底层通过jar包用常量覆盖struts2的默认配置,开启spring的对象工厂,当浏览器访问的时候 ,访问到

    60930

    Struts2的工作原理

    二是提供了对MVC的一个清晰的实现,这一实现包含了很多参与对所以请求进行处理的关键组件,:拦截器、OGNL表达式语言、堆栈。...一个请求在Struts2框架的处理大概分为以下几个步骤 1、客户端初始化一个指向Servlet容器(例如Tomcat)的请求 2、这个请求经过一系列的过滤器(Filter)(这些过滤器中有一个叫做ActionContextCleanUp...这里,我们简单的介绍一下Interceptor 在struts2自带了很多拦截器,在struts2-core-2.1.6.jar这个包下的struts-default.xml我们可以发现: view...在表示的过程可以使用Struts2 框架中继承的标签。...请求参数封装对比:struts2.x使用ModelDriven模式,这样我们 直接 封装model对象,无需要继承任何struts2的基,避免了侵入性。

    66740

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

    1:在Action如何获得作用域(request,session,application)对象;   取得Map(键值对映射集)类型的requet,session,application; 对数据操作的所有方法...:(即把数据保存到域中) 主要使用的是方式2和方式3; 方式1:直接获取ServletApi,核心是ServletActionContext提供的静态的方法; 1 package com.bie.lesson04...interceptor.SessionAware; 8 9 /** 10 * @author 作者:别先生 11 * @version 创建时间:2017年5月7日 上午8:37:05 12 * 说明...-- 过滤器 --> 18 org.apache.struts2.dispatcher.ng.filter.StrutsPrepareAndExecuteFilter...和servlet耦合的方法, 29 // 比如获取目录application.getRealPath("");等等】 30 //Struts对数据操作,方式1:直接拿到

    64460

    (06)Struts2_通过 ActionContext 获取 WEB 资源

    在 Action 访问 WEB 资源 什么是 WEB 资源 ? HttpServletRequest, HttpSession, ServletContext 等原生的 Servlet API。...B\S 的应用的 Controller 必然需要访问 WEB 资源: 向域对象读写属性, 读写 Cookie, 获取 realPath …. 如何访问 ?..., 且只能访问其有限的方法(读取请求参数, 读写域对象的属性, 使 session 失效…) 使用 ActionContext 实现 XxxAware 接口 选用的建议: 若一个 Action 中有多个...为了避免与 Servlet API 耦合在一起, 方便 Action 做单元测试, Struts2 对HttpServletRequest, HttpSession 和 ServletContext 进行了封装..., 构造了 3 个 Map 对象来替代这 3 个对象, 在 Action 可以直接使用 HttpServletRequest, HttpServletSession, ServletContext 对应的

    70410

    Struts2技术内幕》学习笔记「建议收藏」

    这就让容器看起来像一个工厂的集合,可以更加不同的要求。制造出不同种类的对象实例。在容器内部依据type和name进行对象构造工厂factory的寻址。...Container.getInstance()的运行过程须要在struts.xml声明对应的bean节点: <bean name ="entity" type ="com.yang.test.Entity...可以再程序的不论什么一个层次(<em>如</em>业务逻辑层,甚至是持久层)被复用。 POJO突破了FormBean对于页面元素唯一相应的限制,我们可以将页面<em>中</em>的元素自由映射到多个POJO中去。...<em>Struts2</em>的初始化对象分为两<em>类</em>。一<em>类</em>是容器对象。另外一<em>类</em>是事件映射对象。 核心分发器——Dispatcher。在<em>Struts2</em>的初始化过程其中起到了“起承转合”的作用。..., <em>ServletContext</em>) prepare(HttpServletRequest request, HttpServletResponse response) 转:将<em>Struts2</em>转入XWork

    28110

    SSH框架之Struts2第二篇

    原来的Servlet是单例存在,多次请求,请求都是同一个Servlet的实例.Struts2Action是多实例的.有异常请求就会有一个Action的实例....现在可以在Action定义成员属性了. 大部分我们会优先使用模型驱动的方式,因为Struts2内部有很多结果是围绕模型驱动设计的。...这些都是像某个对象中封装数据, 1.2.3 Struts2的数据封装 : 1.2.3.1 Struts2的数据封装-属性驱动 : 提供对应属性的set方法的方式 : 页面...------getApplication() 获取servletContext域中的数据 3 实现特定的接口来获取的方法(了解) 证明Action是单实例还是多实例?...怎么样获取到servlet的API(request,response,session,ServletContext,以及接受页面的数据) 1 通过ServletActionContext的静态方法

    53220
    领券