請(qǐng)求重定向和服務(wù)器內(nèi)部跳轉(zhuǎn)中path的問題?
有一些地方還是沒有弄明白。為什么請(qǐng)求重定向中必須獲取上下文地址,如response.sendRedirect(request.getContextPath()+"/test.jsp"); 而服務(wù)器內(nèi)部跳轉(zhuǎn)則不需要獲得上下文地址,直接寫: request.getRequestDispatcher("/test.jsp").forward(request, response); 猜測(cè)是否是因?yàn)檫@兩種請(qǐng)求方式分別在服務(wù)器內(nèi)外,在服務(wù)器外不知道當(dāng)前項(xiàng)目根目錄,就必須通過request.getContextPath()來獲得地址,而服務(wù)器內(nèi)已經(jīng)知曉了當(dāng)前項(xiàng)目根目錄,所以直接可以用/代替。 請(qǐng)問是這樣嗎?
2017-03-06
你是不是弄混了 這并不是重定向和轉(zhuǎn)發(fā)的區(qū)別,而是為了講解絕對(duì)路徑和相對(duì)路徑的區(qū)別才這么寫的。
2017-01-19
請(qǐng)求轉(zhuǎn)發(fā)與請(qǐng)求重定向的區(qū)別:
重定向:客戶端行為,response.sendRedirect(),從本質(zhì)上講等同于兩次請(qǐng)求,前一次請(qǐng)求對(duì)象不會(huì)保存,地址欄的URL地址會(huì)改變;?
請(qǐng)求轉(zhuǎn)發(fā):服務(wù)器行為,request.getRequestDispatcher().forward(req,resp);是一次請(qǐng)求,轉(zhuǎn)發(fā)后請(qǐng)求對(duì)象會(huì)保存,地址欄的URL地址不會(huì)改變;