在JSP中常有藉有 request 物件來獲得所需物件(如parameter、cookie)的需求
在Servlet裡我們會將 request、response 物件傳入所要覆寫的傳輸協定裡,如下:
public void doPost(HttpServletRequest request, HttpServletResponse response){
....
}
那假如要在非Servlet取得request,我們就自行將request物件傳入即可,例如:
public void setPageInfo(HttpServletRequest request){
if(request.getParameter("page") != null){
page = Integer.parseInt(request.getParameter("page"));
}
request.setAttribute("page", page);
}
之後在目標JSP頁面中就可以用標籤或 EL呼叫method:
<jsp:setProperty property="pageInfo" name="view" value="${pageContext.request}" />
當然不只可以用標籤來進行就是了,<%=xxx.xxx(request)%> 這樣子的處理也OK
不過需要注意一下
如果要做 set 或 動態性的處理似乎只能在有傳入request的該method才能做
推測是傳入request物件表示在請求過程的處理
如果是回應已經送出的話,可能就只能使用 getParameter() 之類的method
沒有留言:
張貼留言