java request是什么?讓我們一起來了解一下吧!
java request是屬于ninja.siden包。request對象是從客戶端向服務器端發出請求,包括用戶提交的信息以及客戶端的一些信息。request對象是javax.servlet.http.HttpServletRequest類的實現實例。
Request常用方法:
1、獲得客戶機信息
2、獲得客戶機請求頭
3、獲得客戶機請求參數(客戶端提交的數據)
實戰演練,具體步驟如下:
class?MyWebContext?{undefined ? private?static?final?ThreadLocal?contexts?=?new?ThreadLocal(); ? //?拿出當前線程綁定的?context ? public?static?MyWebContext?getCurrentContext()?{undefined ? return?(MyWebContext)?contexts.get(); ? } ? public?static?MyWebContext?createContext()?{undefined ? return?new?MyWebContext(); ? } ? //?綁定一個?context?到當前線程 ? public?static?void?setContext(MyWebContext?context)?{undefined ? contexts.set(context); ? } ? public?static?void?clearContext()?{undefined ? contexts.set(null); ? } ? private?HttpRequest?request; ? public?void?setRequest(HttpRequest?request)?{undefined ? this.request?=?request; ? } ? public?HttpRequest?getRequest()?{undefined ? return?this.request; ? } ? } ? class?ContextFilter?implements?Filter?{undefined ? public?void?doFilter(ServletRequest,?SerlvetResponse,?FilterChain?chain)?{undefined ? //?創建并綁定我們的?context ? MyWebContext?context?=?MyWebContext.createContext(); ? context.setRequest(request); ? MyWebContext.setContext(context); ? try?{undefined ? chain.doFilter(request,?response); ? }?finally?{undefined ? //?銷毀?context ? MyWebContext.clearContext(); ? } ? } ? } ? class?MyToolClassWithoutRequestParameter?{undefined ? public?static?String?getFileUploadPath()?{undefined ? //?其它方法只要它是工作在?servlet?請求調用鍵中間的某個時刻,它就肯定能拿到?Filter?綁定進去的?Request,這樣我們就不必要在每次方法調用中都額外地傳遞一個?HttpRequest?參數,當調用層次很深時這能明顯減少復雜性。 ? MyWebContext?contex?=?MyWebContext.getCurrentContext(); ? HttpRequest?request?=?context.getRequest(); ? HttpServletContext?servletContext?=?...; ? HttpSession?session?=?request.getSession(false); ? ... ? } ? }
?以上就是小編今天的分享了,希望可以幫助到大家。