❶ 怎麼獲得javaweb中對每個按鈕操作的請求路徑
f12,看調試界面的「網路」或者「network」,顯示發送的請求
❷ java文件上傳時,web客戶端選擇文件後發送請求到後台。可是web客戶端發送到後台的是文件路徑還是文件流
當然直接傳遞文件流。
你說的那種情況是傳遞請求參數。當然你也可以根據請求的參數拿到這個路徑,你還得根據這個路徑發送請求給客戶端,然後讀取這個文件,這不很麻煩嗎?
❸ web中的路徑與跳轉
絕對路徑:
絕對路徑就是文件或目錄在硬碟上真正的路徑,例如: C:xyz est.txt 代表了test.txt文件的絕對路徑。還有 http://localhost/learnjsp/login.jsp 也是絕對路徑。
相對路徑:
相對與某個基準目錄而言的路徑。
其一,在jsp和servlet中, / 代表web應用的根目錄(以web應用為基準),如 /login.jsp 代表 localhost:8080/myBlog/login.jsp 。
其二,在html中, / 代表伺服器的根目錄(以web伺服器為基準), /login.jsp 代表 localhost:8080/login.jsp 。
其三,參照物理路徑的相對表示。例如: ./ 代表當前目錄, ../ 代表上級目錄。這種類似的表示,也是屬於相對路徑。
在jsp中,因為其包裹了html,大多數情況下我們是要寫html裡面的路徑。 使用相對路徑,因為沒有意義也無法取得絕對路徑 。
使用表單時,要提交給 servlet 進行處理,使用相對路徑:
這里的 <%=request.getContextPath()%> 的值為: /webapp 。
一般情況下,在JSP/HTML頁面等引用的CSS,Javascript.Action等屬性前面最好都加上 <%=request.getContextPath()%> ,以確保所引用的文件都屬於Web應用中的目錄。
無論是表單的 form 還是css、js的引入路徑,都應該盡量 避免使用 類似 . 、 ./ 、 ../../ 等類似的相對該文件位置的相對路徑,否則當文件移動時,很容易出問題。
在servlet中,我們經常要將請求轉發或者重定向到另一個地方。我們 只能使用相對路徑 。
使用 request.getRequestDispatcher(address) 進行請求轉發,或者是 sendRedirect:response.sendRedirect(address) 進行重定向。
注意: 在這里,請求轉發是相對於伺服器而言,因此其 / 代表了 /webapp ;而重定向是相對於客戶端而言,因此其 / 代表了 localhost 。
使用 getRealPath() 來獲取完整的物理路徑, 主要是在 servlet 中經常需要使用 。
下面的3個例子,是在jsp頁面中使用舉例。
這里, / 代表了web應用的根目錄 。
當path為 / 時,代表的是web應用;當path為 /toPost/post.jsp 時,代表的web應用下的某一個文件;當path為 request.getRequestURI() 時,代表發出請求的jsp文件。
1、jsp頁面使用,一般使用不到(沒有意義)
2、servlet中使用
❹ javaweb請求轉發和重定向
樓主的get.html目錄不正確,兩個修改方法:1.不改a標簽內容,在項目下新建一個HelloServlet目錄,把get.html放進去;2.修改a標簽,href="/WEB-INF/get.html"。但是有一點,WEB-INF目錄對外是不可見的,這種方法思路是對的,但沒實踐過。建議a標簽里寫一個servlet地址,由servlet重定向到get.html或get.jsp,這才是javaweb的設計思想。
❺ 在web中<!--/xian-->是什麼意思有什麼作用
1.在web項目中,servlet中的」/「代表的是web應用在servlet中請求轉發到/1.jsp頁面,此時瀏覽器的地址欄請求的資源路徑為http://localhost/testUrl/FirstServlet
2.jsp中的」/"代表的是當前站點
❻ java web 項目 路徑轉換問題
關於上傳路徑的問題,可以分兩步解決。
1.在web.xml中配置。
如果程序中處理上傳的Servlet名字為UploadServlet,在web.xml部署的時候可以添加參數。如下:
<servlet>
<servlet-name>UploadServlet</servlet-name>
<servlet-class>UploadServlet</servlet-class>
<init-param>
<param-name>filePath</param-name>
<param-value>store</param-value>
</init-param>
<init-param>
<param-name>tempFilePath</param-name>
<param-value>temp</param-value>
</init-param>
</servlet>
<servlet-mapping>
<servlet-name>UploadServlet</servlet-name>
<url-pattern>/upload</url-pattern>
</servlet-mapping>
2、在UploadServlet初始化函數init()中可以這樣獲取部署的參數值。
public void init(ServletConfig config) throws ServletException {
super.init(config);
filePath = config.getInitParameter("filePath");
tempFilePath = config.getInitParameter("tempFilePath");
filePath = getServletContext().getRealPath(filePath);
tempFilePath = getServletContext().getRealPath(tempFilePath);
}
❼ forward和redirect的區別
1、請求方不同
redirect:客戶端發起的請求
forward:服務端發起的請求
2、瀏覽器地址表現不同
redirect:瀏覽器地址顯示被請求的
urlforward:瀏覽器地址不顯示被請求的url
3、參數傳遞不同
redirect:重新開始一個request,原頁面的request生命周期結束。
forward:forward另一個連接的時候。request變數是在其生命周期內的。另一個頁面也可以使用,其實質是把目標地址include。
4、底層運作不同
redirect:發送的請求信息又回送給客戶機,讓客戶機再轉發到另一個資源上,需要在伺服器和客戶機之間增加一次通信。
forward:伺服器端直接找到目標,並include過來。
5、定義不同
直接轉發方式(Forward):客戶端和瀏覽器只發出一次請求,Servlet、HTML、JSP或其它信息資源,由第二個信息資源響應該請求,在請求對象request中,保存的對象對於每個信息資源是共享的。
間接轉發方式(Redirect)實際是兩次HTTP請求,伺服器端在響應第一次請求的時候,讓瀏覽器再向另外一個URL發出請求,從而達到轉發的目的。
❽ web開發過程中redirect和forward有什麼區別
Forward和Redirect代表了兩種請求轉發方式:直接轉發和間接轉發,區別在於:
1、間接轉發方式(Redirect),有時也叫重定向,它一般用於避免用戶的非正常訪問。例如:用戶在沒有登錄的情況下訪問後台資源,Servlet可以將該HTTP請求重定向到登錄頁面,讓用戶登錄以後再訪問。在Servlet中,通過調用response對象的SendRedirect()方法,告訴瀏覽器重定向訪問指定的URL,示例代碼如下:
......
//Servlet中處理get請求的方法
publicvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse){
//請求重定向到另外的資源
response.sendRedirect("資源的URL");
}
........
2、直接轉發方式(Forward)用的更多一些,一般說的請求轉發指的就是直接轉發方式。Web應用程序大多會有一個控制器。由控制器來控制請求應該轉發給那個信息資源。然後由這些信息資源處理請求,處理完以後還可能轉發給另外的信息資源來返回給用戶,這個過程就是經典的MVC模式。
......
//Servlet里處理get請求的方法
publicvoiddoGet(HttpServletRequestrequest,HttpServletResponseresponse){
//獲取請求轉發器對象,該轉發器的指向通過getRequestDisPatcher()的參數設置
=request.getRequestDispatcher("資源的URL");
//調用forward()方法,轉發請求
requestDispatcher.forward(request,response);
}
......
總結:
Forward和Redirect代表了兩種請求轉發方式:直接轉發和間接轉發。對應到代碼里,分別是RequestDispatcher類的forward()方法和HttpServletRequest類的sendRedirect()方法。
對於間接方式,伺服器端在響應第一次請求的時候,讓瀏覽器再向另外一個URL發出請求,從而達到轉發的目的。它本質上是兩次HTTP請求,對應兩個request對象。
對於直接方式,客戶端瀏覽器只發出一次請求,Servlet把請求轉發給Servlet、HTML、JSP或其它信息資源,由第2個信息資源響應該請求,兩個信息資源共享同一個request對象。
❾ javaweb中filter請求轉發問題
先說你的請求是使用的Dispatcher進行的轉發,地址欄不會改變為跳轉後的請求地址,你可以搜索重定向和轉發的區別看看
然後頁面為空白先看看是否是頁面內容本來就該沒有,或者你請求的頁面地址跳轉不對,參見
http://77857.blog.51cto.com/67857/167022
如果還沒解決可以上圖看看
❿ Web發布是怎樣把東西發布到網上
Web 發布規則ISA 伺服器使用 Web 發布規則來緩解與發布 Web 內容有關的問題,同時又不危及網路的安全性。Web 發布規則決定了 ISA 伺服器將如何攔截對 Web 伺服器上的超文本傳輸協議 (HTTP) 對象的傳入請求,以及 ISA 伺服器將如何代表 Web 伺服器進行響應。請求被轉發到位於 ISA 伺服器計算機後面的 Web 伺服器。如果可能,將從 ISA 伺服器緩存中提供所請求的對象。
Web 發布規則本質上是將傳入請求與相應的 Web 伺服器匹配。Web 發布規則還使您可以配置高級篩選功能,從而既發布基於 Web 的信息,又防止其受到惡意的訪問。
有關說明,請參閱創建 Web 發布規則。
注意
新規則僅適用於新連接。
配置 Web 發布規則時,應指定下列設置:
Web 伺服器的名稱(或 IP 地址)。可以限定規則適用於伺服器上的所有網站,還是特定的網站。
路徑映射。轉發請求之前,ISA 伺服器可以修改請求中指定的外部路徑,並將其映射為相應的內部路徑。有關詳細信息,請參閱路徑映射。
可以訪問已發布的 Web 伺服器的用戶或計算機。有關說明,請參閱為防火牆策略規則配置用戶。
源。可以訪問已發布的 Web 伺服器的網路對象。有關詳細信息,請參閱網路對象。請注意指定的網路對象還必須包含在為此 Web 發布規則指定的 Web 偵聽器中。有關說明,請參閱為防火牆策略規則配置源網路對象。
Web 偵聽器。這是 ISA 伺服器計算機上偵聽來自客戶端的請求的 IP 地址。有關詳細信息,請參閱 Web 偵聽器概述。
橋接。使用橋接,可以配置 HTTP 請求如何轉發到已發布的伺服器。有關詳細信息,請參閱橋接。
鏈接轉換。使用鏈接轉換,可以配置 ISA 伺服器如何掃描網頁中的鏈接,並使用外部名稱和路徑來對其進行更新。有關鏈接轉換的詳細信息,請參閱鏈接轉換。有關處理鏈接轉換的說明,請參閱替換 Web 頁中的絕對鏈接以及為 Web 發布規則添加鏈接轉換詞典項目。
可以通過配置 HTTP 篩選來進一步篩選向 Web 伺服器發出的請求。有關 HTTP 篩選器的詳細信息,請參閱 HTTP 篩選器。
要點
我們建議您不要在 ISA 伺服器發布的 Web 伺服器上啟用目錄瀏覽。此外,Web 伺服器不能要求摘要式身份驗證或基本身份驗證。否則,Web 伺服器的內部名稱或 IP 地址可能會在 Internet 上暴露。
操作
Web 發布規則指定將由哪一台伺服器(如果有)返回所請求的對象。請求可能被丟棄,也可能被重定向到另一個站點,並且通常重定向到您公司網路中的 Web 伺服器。
當配置將請求重定向到主持站點的規則時,ISA 伺服器從主機上的路徑(在請求中指定)中檢索對象。例如,假定您指定 ISA 伺服器將對 example.microsoft.com/development 的請求轉發到名為 Dev 的主機。那麼,當客戶端請求 example.microsoft.com/development 中的對象時,ISA 伺服器將從 Dev 上的 development 文件夾中檢索對象。
Web 發布規則通過閱讀主機頭來確定所請求的目標。
有關說明,請參閱為防火牆策略規則配置操作。
路徑映射
在將請求轉發到發布的 Web 伺服器之前,ISA 伺服器會檢查請求中所指定的(外部)路徑。如果配置路徑映射,ISA 伺服器將用相應的路徑名來替換請求中所指定的路徑。請注意指定的每個路徑必須是確定而唯一的。
指定路徑映射時應遵循下列准則:
指定請求將映射到的內部路徑時,請使用格式:/mypath/*。
不能在路徑中使用通配符。例如,不要指定 mypath*/ 或 /mypath*。
配置路徑映射時,應避免指定文件名。否則,可能將僅處理路徑完全匹配的請求。
有關說明,請參閱配置路徑映射。
橋接
創建 Web 發布規則時,可以進一步保護 HTTP 通訊的安全性。即便最初的通訊使用的是 HTTP,在 ISA 伺服器收到請求後,也可以使用 SSL 重定向通訊。如果請求被作為 SSL 請求重定向,則會加密數據包。這種重定向被稱為橋接。
可以設置 HTTP 或 SSL 請求將被作為文件傳輸協議 (FTP) 請求傳遞到 Web 伺服器。如果外部客戶端使用 HTTP 或 SSL 請求對象,那麼 ISA 伺服器可以使用 FTP 將請求重定向到內部 Web 伺服器。如果以這種方式配置橋接,可以指定在橋接 FTP 請求時將使用哪個埠。
上游 Web 伺服器可能要求客戶端證書。在這種情況下,應配置 ISA 伺服器使用特定的客戶端證書進行身份驗證。
如果配置 Web 發布規則要求安全通道,則對指定目標的所有客戶端請求都必須使用為 SSL 連接指定的埠。
有關說明,請參閱配置如何為 Web 發布規則重定向 HTTP 請求。
發布具有相同域名的網站
客戶端通過 ISA 伺服器發布的完全限定的域名 (FQDN) 來識別發布的網站。這意味著網站的 FQDN 就是您在 Web 發布規則中配置的 FQDN。通過使用同一個 FQDN 來發布多個 Web 伺服器,客戶端假定發布的兩個站點實際是相同的。也就是說,Web 客戶端可以將原定發往一個 Web 伺服器的信息發送到另一個 Web 伺服器。
規則順序
Web 發布規則是與所有防火牆策略規則一起處理的。針對每個傳入的 Web 請求按順序對它們進行處理。如果規則與請求匹配,則將相應地路由並緩存請求。如果沒有與該請求匹配的規則,則 ISA 伺服器將處理默認規則並丟棄請求。