获取web资源的方式按是否与servlet耦合可分为两种,再细分按照依赖方式又有两种即

依赖容器 和  依赖注入

什么是依赖容器

就是依赖  ActionContext或者ServletActionContext容器获得web元素

什么是依赖注入

IoC(inverse of control)控制反转=dependence injection  依赖注入

是针对web元素(也叫web资源)如  request、session、application这三者的访问。

实现RequestAware、RessionAware、ApplicationAware或者ServletRequestAware、ServletRessionAware、ServletApplicationAware接口,要复写里面的get和set方法,传入的参数都是map类型。

常用方式为ioc的RequestAware、RessionAware、ApplicationAware的方式。

获取request、session、application的方式(依赖容器)

request

  1. Map<String, Object> request = (Map)ActionContext.getContext().get("request");
  2. HttpServletRequest   request = ServletActionContext.getRequest();

session

1.Map<String,Object> session =  ActionContext.getContext().getSession();

    2.HttpSession session = ServletActionContext.getRequest().getSession();

application

1.Map<String,Object> application=ActionContext.getContext();

2.ServletContext   application=ServletActionContext.getRequest().getSession().getServletContext();

3.ServletContext   application=ServletActionContext.getServletContext();

通过耦合servlet的依赖容器的方式

request--->session--->application

HttpServletRequest request;
HttpSession session;
ServletContext application;
request=ServletActionContext.getRequest();
session=request.getSession();
application=session.getServletContext();

struts2获取web元素的方式和方法的更多相关文章

  1. struts2获取web元素(request、session、application)

    一.Action中获取 第一种方式: 通过ActionContext,这种方式取到的对象是Map类型 import java.util.Map; import com.opensymphony.xwo ...

  2. struts2 访问Web元素的4种方法

    完整代码 :Struts12AccessWebElement.rar 第一种也是最常用的一种方法实现这几个接口 RequestAware,SessionAware,ApplicationAware s ...

  3. Struts2 访问web元素

    访问web元素的四种方法(耦合,依赖注入).(耦合,非依赖注入).(非耦合,依赖注入).(非耦合,非依赖注入) 耦合:可以得到HttpServletResponse,HttpServletReques ...

  4. js获取隐藏元素宽高的方法

    网上有一些js获取隐藏元素宽高的方法,但是可能会存在某些情况获取不了. 例如: <!DOCTYPE html> <html lang="en"> <h ...

  5. Js之Dom学习-三种获取页面元素的方式、事件、innerText和innerHTML的异同

    一.三种获取页面元素的方式: getElementById:通过id来获取 <body> <input type="text" value="请输入一个 ...

  6. JavaScript中获取HTML元素的方式

    JavaScript中获取HTML元素的方式 1.使用id方式获取元素,返回一个具体对象   document.getElementById(id名) 2.使用className方式获取元素,返回类数 ...

  7. JS获取DOM元素的八种方法

    JS获取DOM元素的方法(8种) 通过ID获取(getElementById) 通过name属性(getElementsByName) 通过标签名(getElementsByTagName) 通过类名 ...

  8. Struts2访问web元素的各种方法

    1.通过RequestAware,SessionAware,ApplicationAware获取: 在Struts2中不能直接访问Request,Session,Application元素,但是可以使 ...

  9. Struts2之web元素访问与模板包含与默认Action使用

    上一篇为大家介绍了如何使用Action进行参数接收,以及简单的表单验证,本篇为大家介绍一下关于Action访问web元素的三种方式(request.session.application):模板包含( ...

随机推荐

  1. Angular(2)

    1.自定义指令,直接栗子: note:定义指定是驼峰,2部分 前缀+作用,but  调用 改驼峰首字母大写处为 (-首字母小写) <!DOCTYPE html><html lang= ...

  2. Codeforces 723d [暴力dfs]

    /* 不要低头,不要放弃,不要气馁,不要慌张. 题意: 给n,m和k,n和m为所给矩阵的高和宽.k是要求最多剩下的湖的数量. 在所给的矩阵中,*代表陆地,.代表水. 湖的定义是一片连续的水(上下左右四 ...

  3. OS X 禁止Android File Transfer自动启动

    操作步骤 关闭Android File Manager 在Activity Manager中退出Android File Manager Agent进程 在Applications中,将Android ...

  4. metasploit升级(BT5)

    1.apt-get update 2.apt-get install metasploit 3.修改文件:/opt/metasploit/ruby/lib/ruby/1.9.1/i686-linux/ ...

  5. Linux字符界面下用户账户的设置

    在Linux系统字符界面下创建.修改以及删除用户账户主要使用useradd,usermod和userdel这3个命令. 一.创建用户账户 创建用户账户就是在系统中创建一个新账户,然后为新账户分配用户U ...

  6. aspx中如何绑定llistbox数据列表

    DataTable dt = new DataTable(); dt = goodsbll.Get_prodtolist(_fatherpeoid,_sonpeoid).Tables[]; ) { f ...

  7. 百度地图API示例之根据城市名设置地图中心点

    代码: <!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" con ...

  8. Python之路【第十六篇】:Django【基础篇】

    Python之路[第十六篇]:Django[基础篇]   Python的WEB框架有Django.Tornado.Flask 等多种,Django相较与其他WEB框架其优势为:大而全,框架本身集成了O ...

  9. Android DDMS检测内存泄露

    Android DDMS检测内存泄露 DDMS是Android开发包中自带工具,可以测试app性能,用于发现内存问题. 1.环境搭建 参考之前发的Android测试环境搭建相关文章,这里不再复述: 2 ...

  10. C++之jsoncpp学习

    最新由于客户端要用到jsoncpp,所以自己也跟着项目的需求学了一下jsoncpp.以前没用过xml,但是感觉接触json后,还蛮好用的. 参考地址 http://jsoncpp.sourceforg ...