婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > 詳解Struts2中Action訪問Servlet API的幾種方法

詳解Struts2中Action訪問Servlet API的幾種方法

熱門標簽:給地圖標注得傭金 潤滑油銷售電銷機器人 南通通訊外呼系統產品介紹 海外圖書館地圖標注點 外呼系統使用方法 如何看懂地圖標注點 自繪地圖標注數據 電銷機器人免培訓 電話機器人需要使用網絡嗎

詳解Struts2中Action訪問Servlet API的幾種方法

在通常的web開發中Request和Response對象比較常見,但在Struts2框架中由于Action能與JSP頁面進行數據交互,所以通常都不會用到這兩個對象。如果想在Struts2程序中用到這兩個對象,也有解決方法

Struts2的Action并未直接與任何Servlet API耦合,這是Struts2的一個改良之處,因為Action類不再與Servlet API耦合,能更輕松的測試該Action。但如何訪問? 

Web應用中通常需要訪問的Servlet API就是HttpServletRequest、HttpSession、ServletContext這3個類,分別代表JSP內置對象中的request、session、application。 

方法一:(一般推薦使用,IOC方式,只能獲得request,而response則得不到)

Struts2提供了ActionContext類,通過ActionContext類訪問Servlet API。 

下面是ActionContext類中包含的幾個常用方法。 

1、public Object get(Object key):取得HttpServletRequest中key的值;
2、void put(String key,Object value):設置HttpServletRequest中key的值為value;
3、public Map getApplication():獲取封裝了ServletContext的Map對象;
4、void setApplication(Map application):設置ServletContext實例;
5、static ActionContext getContext():靜態方法,獲取系統的ActionContext實例;
6、Map getParameters():類似于HttpServletRequest中的getParametersMap方法;
7、public Map getSession():獲取封裝了HttpSession的Map對象;
8、void setSession(Map session):直接傳入一個Map實例,將該Map實例里的key-value對轉換為session的屬性名和屬性值;

方法二:(不推薦,麻煩,非IOC方式,與Servlet API耦合大)

雖然Struts2提供了ActionContext來訪問Servlet API,但這種訪問不能直接獲得Servlet API,為了在Action中直接訪問Servlet API,Struts2還提供了以下接口。 

1、ServletContextAware:實現該接口的Action可以直接訪問Web應用的ServletContext實例;
2、ServletRequestAware:實現該接口的Action可以直接訪問用戶請求對象的HttpServletRequest的實例;
3、ServletResponseAware:實現該接口的Action可以直接訪問服務器響應的HttpServletResponse的實例; 

方法三:(非IOC方式,強烈推薦使用)

Struts2還提供了一個ServletActionContext,其靜態方法有:getPageContext()、getRequest() 、getResponse()、getServletContext()。 

1、HttpServletRequest request=ServletActionContext.getRequest();
2、HttpServletResponse response=ServletActionContext.getResponse();
3、request.getSession().setAttribute("username","admin");
4、request.setAttribute("password","123456");

以上就是Struts2中Action訪問Servlet API的幾種方法,如有疑問請留言或者到本站社區交流討論,感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

您可能感興趣的文章:
  • 關于struts2中Action名字的大小寫問題淺談
  • Struts2之Action接收請求參數和攔截器詳解
  • struts2通過action返回json對象
  • Struts2 ActionContext 中的數據詳解
  • Struts2中異常處理機制分析

標簽:內江 廣州 黃石 樂山 大連 南京 貸款邀約 銅川

巨人網絡通訊聲明:本文標題《詳解Struts2中Action訪問Servlet API的幾種方法》,本文關鍵詞  詳解,Struts2,中,Action,訪問,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《詳解Struts2中Action訪問Servlet API的幾種方法》相關的同類信息!
  • 本頁收集關于詳解Struts2中Action訪問Servlet API的幾種方法的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 彭州市| 安福县| 基隆市| 张北县| 津南区| 洛隆县| 四子王旗| 石狮市| 拉孜县| 尚义县| 巴南区| 嘉义市| 富平县| 洞口县| 丰城市| 凌源市| 渭源县| 昌邑市| 江城| 高唐县| 高青县| 绥化市| 织金县| 莲花县| 北安市| 盐池县| 庄浪县| 新余市| 宜章县| 温泉县| 大渡口区| 炎陵县| 盐亭县| 乌兰察布市| 张家口市| 吉林省| 柯坪县| 五台县| 夏津县| 山东省| 新安县|