導航:首頁 > 編程語言 > javarequest類

javarequest類

發布時間:2024-09-07 15:48:28

java類中request.getParamater("a")獲取jsp頁面url傳遞的參數,編碼問題。

因為URL採用ISO-8859-1編碼,所以得把它轉換成與頁面相同的編碼方式。
獲取的值轉碼試試看
比如:
str=new String(str.getBytes("iso-8859-1"),("gb2312"));

❷ 如何用java判斷瀏覽器類型

用java判斷瀏覽器類型可以通過從request里可以獲取用戶瀏覽器類型

代碼如下:

Enumerationgete=request.getHeaderNames();
while(e.hasMoreElements()){
Stringname=(String)gete.nextElement();
Stringvalue=request.getHeader(name);
}

這樣可以遍歷從客戶端傳來的所有頭信息:

解釋說明:

  1. request.getHeaderNames();//取得全部頭信息

  2. request.getHeader();//取出頭信息內容

  3. request.getHeaders("User-Agent"); //request.getHeader(「User-agent」)返回客戶端瀏覽器的版本號

❸ java如何在一個普通的類中獲取request對象

你是指你的 web 項目中使用到一個工具性的類,它的形參中沒有 HttpRequest 或 HttpSession 參數?


如果是這樣的話,我們需要使用一個 ThreadLocal 變數,我們把當前 request 的變數綁定到裡面,在一個 request 請求的生命周期內我們在方法調用的各個更深的層次中都可以直接使用它而不需要在每個方法中都傳遞這個 request 參數,保存在某個地方就容易導致因為多個請求共用同一個實例而出問題,所有 context 相關的變數不保存在任何業務類相關並且可能被多線程共用的對象實例中才是保證不會出現線程安全問題的途徑。


例如,這個例子中我們只要把web.xml中配置好 ContextFilter 後它就會自動在請求開始時綁定一個 context,結束後自動銷毀,在這中間的任何時刻我們都可以通過 MyWebContext.getCurrentContext() 得到我們的 HttpServletRequest 實例和其它相關的 context 變數:

//MyWebContext記錄當前Request的所有context變數。因為servlet是一個請求綁定一個線程的,我們用ThreadLocal不會有線程安全問題。

classMyWebContext{
=newThreadLocal();

//拿出當前線程綁定的context
(){
return(MyWebContext)contexts.get();
}
(){
returnnewMyWebContext();
}

//綁定一個context到當前線程
publicstaticvoidsetContext(MyWebContextcontext){
contexts.set(context);
}
publicstaticvoidclearContext(){
contexts.set(null);
}

privateHttpRequestrequest;
publicvoidsetRequest(HttpRequestrequest){
this.request=request;
}
publicHttpRequestgetRequest(){
returnthis.request;
}
}

{
publicvoiddoFilter(ServletRequest,SerlvetResponse,FilterChainchain){
//創建並綁定我們的context
MyWebContextcontext=MyWebContext.createContext();
context.setRequest(request);
MyWebContext.setContext(context);
try{
chain.doFilter(request,response);
}finally{
//銷毀context
MyWebContext.clearContext();
}
}
}

{
(){
//其它方法只要它是工作在servlet請求調用鍵中間的某個時刻,它就肯定能拿到Filter綁定進去的Request,這樣我們就不必要在每次方法調用中都額外地傳遞一個HttpRequest參數,當調用層次很深時這能明顯減少復雜性。

MyWebContextcontex=MyWebContext.getCurrentContext();

HttpRequestrequest=context.getRequest();

=...;
HttpSessionsession=request.getSession(false);
...

}
}

❹ java里,request.getRequestURI().indexOf是什麼意思

request:請求
getRequestURI:獲取請求的url
indexOf(str):求字元串內str出現的位置下標
所以:request.getRequestURI().indexOf("1.jsp")的意思就是,求請求的url內「1.jsp」的位置,返回的是一個數字,代表出現的位置,-1表示不存在。通常和-1比較來表示是否包含指定的頁面,常用於過濾器。
例:if(request.getRequestURI().indexOf("1.jsp")){
filterChain.doFilter(request,response);//給1.jsp放行

}else{
xxxxxx//不放行,進行別的操作

}

❺ Java 怎麼在一個普通類中獲取到Request對象

首先,向你確認你所謂的普通類就是POJO嗎,如果是是無法獲取Request對象的。
不過,可以使用參數傳遞的方式。

Request對象,即ServletRequest,隸屬於javax包下的,需要實現其HttpServletRequest介面才能獲取到Request對象

故在普通java類中是無法獲取到request對象的

望參考

閱讀全文

與javarequest類相關的資料

熱點內容
安卓路由表怎麼看 瀏覽:74
10個小孩分糖果python 瀏覽:823
安卓app小紅點怎麼取消 瀏覽:286
馬哥linux面授 瀏覽:768
2345程序員 瀏覽:371
怎麼開啟網速顯示安卓 瀏覽:204
索尼950app怎麼樣 瀏覽:391
計算機畢設論文源碼 瀏覽:148
小米手機怎麼下載易媒體App 瀏覽:191
還原系統設計可以怎樣清理文件夾 瀏覽:670
北京時間校準伺服器雲伺服器 瀏覽:844
pythonexcel數據計算 瀏覽:49
內醫附院黨建APP怎麼下載 瀏覽:356
榮耀v20刷加密門禁卡 瀏覽:329
app緩沖視頻怎麼保存在手機 瀏覽:433
廣度優先演算法c語言 瀏覽:680
提高程序員競爭力 瀏覽:108
nfc可以開加密門卡嗎 瀏覽:675
如何知道網頁使用的伺服器是什麼 瀏覽:224
單片機接反電源會燒嗎 瀏覽:287