下面小編就為大家帶來一篇java-servlet-轉發AND路徑(詳解)。小編覺得蠻不錯的,現在就分享給大家,也給大家做個參考。一起跟著小編過來看看吧
1.轉送:
a) 什麼是轉送?
一個web元件將未完成的任務交給另一個web元件繼續做。
#通常是一個servlet將資料擷取之後轉交給jsp進行展現.
註:web元件值得是servlet或jsp
b) 如何轉送?
1.將資料綁定到request物件上.
#request.setatteribute(string name,obj)
#註:name綁定名obj:綁定值
obj request.getattr…(string name);//依據綁定名稱取得綁定值.
##2.取得轉發器
requestdispatatcher rd = request.getrequestdispatcher(string url);註:轉送的目的地,例如一個jsp#3.轉發
rd.forward(request,response)註:轉送的本質是web元件通知容器呼叫另外一個web元件,(即呼叫service方法,所以需要傳遞request ,response)c) 特點:
#1.轉發的目的地有限制(要求同一個web應用中的某個位址)
2.轉送之後,瀏覽器位址不變.
d) 比較重定向與轉送:
1.轉送所涉及的各個web元件可以共享request和response.重定向不可以.
註:request和response的生存時間並不長(當伺服器收到請求後會立即創建這兩個對象,當響應發送完畢,會立即銷毀這兩個對象)即這兩個對象的生存時間為一次請求與響應期間存在.2.轉送之後瀏覽器網址列位址不變(要求同一個web應用程式中的某個位址),重定向沒有任何限制且位址會改變.
##3.路徑問題:
a) 什麼是路徑問題? 連結,表單提交,重定向和轉送都需要填入一個路徑,例如
b) 相對路徑
1.什麼是相對路徑?不以」/」開頭的路徑.
c) 絕對路徑
1 .什麼是相對路徑?以」/」開頭的路徑.
2.如何寫絕對路徑?連結,表單提交,重定向衝應用程式名稱開始寫,轉送從應用程式名稱開始寫.
z註:不要直接將應用程式名稱寫在路徑裡面,應該使用request.getcontextpath()取得應用程式名.
以上是Java-servlet-轉送AND路徑的實例分析的詳細內容。更多資訊請關注PHP中文網其他相關文章!