詳解servlet調用的幾種簡單方式總結
servlet調用的幾種簡單方式
這裡總結的是我在學習web開發的過程中需要用到的幾種比較常見的用於轉發和調用servlet的方式,這些方式的使用率非常高。在網上總結瞭相關的方法,大多對於初學者不是特別的友好,自己總結瞭一下。
1.servlet直接轉發到另一個servlet
我們在進行jsp頁面點擊按鈕進行登錄的時候,首先需要登錄到進行登錄檢查的servlet,但是在下個jsp頁面,我們需要那個頁面通過servlet進行轉發,所以需要從servlet直接跳轉到另一個servlet,其實寫法很簡單,隻要保證映射地址正確即可.
response.sendRedirect(“xxxxx”);
xxxx: 是你需要轉發的servlet的映射地址
2.使用a標簽跳轉到servlet的兩種情況
1.第一種情況
每一個功能對應一個servlet的時候,這時我們用標簽直接調用servlet的時候,語法如下:
<a href="product?&cid=${cid}&page=${status.index}" rel="external nofollow" >${status.index}</a>
其中product是對應的servlet的映射地址,用?問好隔開,& + 參數名+ = + 參數值,參數值可以用el表達式去表示。
2.第二種情況
當我們把多個servlet進行合並的時候,對應的每一個servlet肯定都會有相應的描述的方法,這種情況下使用a標簽進行servlet的調用語法如下:
<a href="product?method=productList&cid=${cid}&page=${status.index}" rel="external nofollow" >${status.index}</a>
其中product是對應的servlet的映射地址,中間使用?問好隔開,method+ = 方法 即 productList,後面的參數和參數名稱和第一種情況的表示方式一樣。
3.最簡單的一種用表單調用
直接在表單的action中添加servlet的映射地址,同時表明該提交servlet的方法是get還是post,兩種區別還是比較大的。
<form action="servlet" method="get"> <input type="submit" value="test"> </form>
4.通過腳本編寫函數的方式調用servlet
首先我們先些一個按鈕,即button,這裡要特別主題該按鈕需要放在表單裡面才會有效果,即相當於一個提交的效果。
//這裡為按鈕添加瞭onclick的時間,並鏈接到一個函數上 <input type="button" value="button" "test();"> //這裡是函數部分,用於跳轉到需要使用的servlet上 function test() { var f=document.forms[0]; f.action="servlet"; //這裡填寫的是servlet的映射地址 f.submit(); }
這裡的本質是把button按鈕賦予瞭submit的功能。
5. 通過ajax請求servlet
因為ajax的優點不僅在於可以在不轉發servlet的情況下進行頁面的更新
通過ajax實現請求:
function Test(id) { $.ajax({ type:"get", url:"${pageContext.request.contextPath }/Servlet", data:{"id":id} }); }
這裡的路徑URL有固定的格式,後面跟的servlet是需要調用的servlet的映射地址
再舉一個例子,也掌握一下ajax的具體用法
//以下是js中的ajax <script type="text/javascript"> function ajaxFun(){ $.ajax({ type: "POST", //傳數據的方式 url: "TestServlet", //servlet地址 data: $('#form').serialize(), //傳輸的是form表單裡面的數據 success: function(result){ //傳數據成功之後的操作 result是servlet傳回來的數據 這個函數對result進行處理,讓它顯示在 輸入框中,也就是回調一個函數,但是概念不同 $("#result").val(result); //根據id找到輸入框 並且將result的值傳進去 } }); } </script> //下面是html的代碼和表單 <div align="center"><form id="form"> first:<input type="text" name="first" id="first"> second:<input type="text" name="second" id="second"> //這裡給按鈕添加瞭點擊的事件 <button type="button" "ajaxFun()">button</button> //提交按鈕 </form> // 用來顯示result的文本框 <input type="text" id="result"> </div> //上面的請求需要返回result 那麼這個值由servlet去返回 部分代碼如下 String first = request.getParameter("first"); //從頁面獲取數據first String second = request.getParameter("second"); //從頁面獲取數據second String result=first+second; System.out.println(result); //用於測試打印是否有數據; out.println(result); //將數據傳到前端,這步非常重要
到此這篇關於詳解servlet調用的幾種簡單方式總結的文章就介紹到這瞭,更多相關servlet調用內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!
推薦閱讀:
- 利用python實現後端寫網頁(flask框架)
- java構造http請求的幾種方式(附源碼)
- nodejs獲取表單數據的三種方法實例
- jsp+servlet實現簡單登錄頁面功能(附demo)
- 淺談Swoole並發編程的魅力