1. 程式人生 > >SpringMvc4中獲取request、response物件的方法

SpringMvc4中獲取request、response物件的方法

springMVC4中獲取request和response物件有以下兩種簡單易用的方法:

1、在control層獲取

在control層中獲取HttpServletRequest和HttpServletResponse物件有以下兩種簡單方式:

1)通過方法引數直接在action類中獲取

@Controller

class Action{

  @RequestMapping("/path")

   public String getReqAndRes(HttpServletRequest request, HttpServletResponse response){

      /**  相關業務程式碼   此時可以直接使用request response物件 */

   }

}

2)利用spring web提供的@ModelAttribute註解

@ModelAttribute放在類方法的引數前面表示引用Model中的資料

@ModelAttribute放在類方法上面則表示該Action類中的每個請求呼叫之前都會執行該方法,因此在此方法裡面可以做一些請求預處理,利用此特性就可以抽象出一個基本Action類,然後所有的Action類都繼承自這個基本Aciton類,在基本Action類裡面獲取相應的request、response、session物件:

public class BaseAction{

   protected HttpServletRequest request;

   protected HttpServletResponse response;

   protected HttpSession session;

   @ModelAttribute

   public void setReqAndRes(HttpServletRequest request, HttpServletResponse response){

       this.request = request;

       this.response = response;

       this.session = request.getSession();

   }

   /** 其他業務程式碼 */

}

2、通過spring提供的RequestContextHolder在非contrller層獲取request和response物件

HttpServletRequest request = ((ServletRequestAttributes)RequestContextHolder.getRequestAttributes()).getRequest();

HttpServletResponse response = ((ServletRequestAttributes)RequestContextHolder.getRequestAttributes()).getResponse();

HttpServletResponse response = ((ServletWebRequest)RequestContextHolder.getRequestAttributes()).getResponse();

ServletContext context = ContextLoader.getCurrentWebApplicationContext().getServletContext();

相關推薦

SpringMvc4獲取requestresponse物件方法

springMVC4中獲取request和response物件有以下兩種簡單易用的方法: 1、在control層獲取 在control層中獲取HttpServletRequest和HttpServle

struts之Action獲取requestresponse物件方法

1、訪問或新增request/session/application屬性 public String scope() throws Exception{     ActionContext ctx = ActionContext.getContext();    

怎樣在struts2的Action獲取requestresponsesession物件

使用習慣servlet技術之後, 在進行後臺操作的時候通常會用到 request、response、session這些伺服器物件, request 通常用來接收前臺傳來的引數, 在 struts 中通常都用自動注入的方式解決, respone 是後臺處理

AOP日誌:aspect獲取requestresponse方法

RequestAttributes ra = RequestContextHolder.getRequestAttributes(); ServletRequestAttributes sra = (ServletRequestAttributes)ra; HttpServletRequest re

SpringBoot方法獲取RequestResponse

很多時候方法中沒有帶引數HttpServletRequest 和HttpServletResponse ,但是我們需要用到這個引數。 場景: 我們將使用者的登陸資訊存入了redis以token作為Key,在某些地方需要獲取使用者資訊,我們就需要獲取請求頭中的token。

ASP.NETRequestResponseServer對象

.html languages asa 地址欄 判斷 nsf 一次 服務 tco Request對象 Response.Write(Request.ApplicationPath) //應用根路徑Request.AppRelativeCurrentExecutionFile

struts2在action獲取requestsessionapplication,並傳遞數據

ride b2c 傳遞 sets content context 分享 https fcm 假設僅僅是通過request、session、application傳遞數據,則不須要獲取對應的對象也能夠傳遞數據,代碼例如以下: ScopeAction.java: packa

ssm框架獲取requestresponse

根據 屬性 使用 兩個 framework 容器 resp private ssm 有時候需要在Controller、service中使用HttpServletRequest或HttpServletResponse對象,這裏記下3種方法 1.直接在Controller接

spring MVC獲取requestresponse:

log clas pos stc body stat response ons style spring MVC中獲取request和response: HttpServletRequest request = ((ServletRequestAttributes)

requestresponse物件

request request概述: request是Servlet.service()方法的一個引數,型別為javax.servlet.http.HttpServletRequest。在客戶端發出每個請求時,伺服器都會建立一個request物件,並把請求資料封裝到requ

spring獲取requestresponse

在spring專案中,我們通常有幾種方法可以獲取request物件,1直接引數獲取 @RequestMapping("/path") public String getReqAndRes(HttpServletRequest request, HttpServlet

struts2 action獲取request session application的方法

lang ext his aware login attribute 定位 統一 ati 共四種方式: 其中前兩種得到的是Map<String,Object> 後兩種得到的才是真正的request對象 而Map就是把request對象中的屬性取出做成了鍵值對

Struts2獲取request,session,application物件

在傳統的Web開發中,經常會用到Servlet API中的HttpServletRequest、HttpSession和ServletContext。Struts 2框架讓我們可以直接訪問和設定action及模型物件的資料,這降低了對HttpServletRequest物件的

Spring 獲取 request 的幾種方法,及其線程安全性分析

變種 bject input sta cli 方法參數 一律 內存空間 足夠 概述在使用Spring MVC開發Web系統時,經常需要在處理請求時使用request對象,比如獲取客戶端ip地址、請求的url、header中的屬性(如cookie、授權信息)、body中的數據

ServletrequestresponseServletContext 及其常用方法

request物件的類是HttpServletRequest request的常見方法: request.getRequestURL(): 瀏覽器發出請求時的完整URL,包括協議 主機名 埠(如果有)request.getRequestURI(): 瀏覽器發出請求的資源名部分,去掉了協議和主機名reque

Java 獲取Request,Response物件方法

第一種、引數@RequestMapping("/test") @ResponseBody public void saveTest(HttpServletRequest req, HttpServletResponse resp){   }第二種、註解@Autowired

java 獲取requestresponse的一種方法

requestjava獲取request和response:HttpServletResponse response = ((ServletRequestAttributes) RequestContextHolder.getRequestAttributes()).getResponse();//獲取res

request獲取post的json物件資料content-type=“text/plain”

/** *獲取 request 中用POST方式"Content-type"是 * "text/plain"傳送的 json資料 * @author: Simon * @date: 2017年8月6日 下午7:44:09 * @param request * @r

在業務控制方法寫入RequestResponse等傳統web參數

action on() ger parameter out 傳統 ssi oid hello 可以在業務控制方法中書寫傳統web參數,這種方式我們不提倡,耦合了 @Controller @RequestMapping(value="/user") public c

如何在spring框架獲取request物件

首先,到web.xml中新增監聽: <listener> <listener-class>org.springframework.web.context.request.R