tinguo002

           

          STRUTS2獲得session和request


          來源

          http://www.cnblogs.com/earl86/archive/2008/11/13/1666459.html

          在struts1中,獲得到系統的request或者session對象非常方便,都是按照形參傳遞的,但是在struts2中,request和session都被隱藏了
          struts提供兩種方式訪問session和request,其中比較常用的是利用SPRING里面所說的IOC即控制反轉
          IOC方式:
          action類實現ServletRequestAware接口,并新建一個HttpServletRequest request
          public class UserLoginAction extends ActionSupport implements ServletRequestAware{
              public void setServletRequest(HttpServletRequest request) {
                this.request=request;
             }
          然后可以生成的request得到對象,如request.getRemoteAddr()
          action類實現SessionAware接口,并創建一個MAP對象session
          public class UserLoginAction extends ActionSupport implements ServletRequestAware,SessionAware{
              public void setServletRequest(HttpServletRequest request) {
                this.request=request;
             }
          public void setSession(Map session) {
             this.session=session; 
          }
          非IOC方式
          非Ioc方式

          這種方式主要是利用了com.opensymphony.xwork2.ActionContext類以及org.apache.struts2.ServletActionContext類,具體的方法如下所示。
          獲得request對象:
          AHttpServletRequest request = ServletActionContext.getRequest ();
          B.ActionContext ct= ActionContext.getContext()
              HttpServletRequest request=
          (HttpServletRequest)ct.get(ServletActionContext.HTTP_REQUEST);
          獲得session對象:
          在Struts2中底層的session都被封裝成了Map類型,我們稱之為SessionMap,而平常我們所說的session則是指HttpSession對象,具體的獲得方法如下所示。
          A.Map session=ActionContext.getSession();
          B.Map session=(Map)ActionContext.getContext().get(ActionContext.SESSION);
          得到這個SessionMap之后我們就可以對session進行讀寫了,如果我們想得到原始的HttpSession可以首先得到HttpServletRequest對象,然后通過request.getSession()來取得原始的HttpSession對象。一般情況下SessionMap已經可以完成所有的工作,我們不必再去碰底層的session了。


          歡迎大家訪問我的個人網站 萌萌的IT人

          posted on 2012-09-05 14:15 一堣而安 閱讀(236) 評論(0)  編輯  收藏 所屬分類: struts2


          只有注冊用戶登錄后才能發表評論。


          網站導航:
           

          導航

          統計

          常用鏈接

          留言簿(1)

          隨筆分類

          隨筆檔案

          收藏夾

          搜索

          最新評論

          閱讀排行榜

          評論排行榜

          主站蜘蛛池模板: 宁远县| 乐至县| 扎鲁特旗| 罗平县| 景宁| 吐鲁番市| 长治县| 叶城县| 尼玛县| 汶上县| 吉隆县| 梅河口市| 永靖县| 浦城县| 皋兰县| 晴隆县| 三江| 离岛区| 津南区| 搜索| 尼玛县| 贞丰县| 嘉祥县| 绥滨县| 东乡族自治县| 邯郸市| 玛曲县| 定南县| 涞源县| 开平市| 泗洪县| 彭州市| 金华市| 开阳县| 巴马| 台湾省| 江阴市| 东阳市| 来凤县| 荣昌县| 桑日县|