去年開始接觸java web項目開發(fā),在項目開發(fā)過程中難免會遇到前臺jsp頁面獲得的數(shù)據(jù)傳到后臺controller層去處理,對于常用的三種方式進(jìn)行了以下總結(jié):
1.Form表單提交
jsp頁面中可以嵌入form表單,主要有兩個屬性,action和method。action的內(nèi)容是表單要提交到后臺controller的某個請求。method是表單提交方式:主要有g(shù)et和post兩種提交方式,一般的表單提交數(shù)據(jù)會用到post方式,考慮到數(shù)據(jù)安全性問題。下面是我做的一個小例子,有用戶名和密碼兩個字段
jsp頁面form表單
后臺處理請求代碼:
后臺請求方法
2.Ajax = Asynchronous JavaScript and XML
通過在后臺與服務(wù)器進(jìn)行少量數(shù)據(jù)交換,AJAX 可以使網(wǎng)頁實現(xiàn)異步更新。這意味著可以在不重新加載整個網(wǎng)頁的情況下,對網(wǎng)頁的某部分進(jìn)行刷新。很常見的例子在某些網(wǎng)站注冊過程中要求用戶名不能重復(fù),所以在避免數(shù)據(jù)已經(jīng)提交到后臺去數(shù)據(jù)庫校驗該用戶是否存的的情況下,ajax可以實現(xiàn)異步刷新,在文本框失去焦點后就去訪問后臺數(shù)據(jù)庫判斷該用戶是否已經(jīng)存在。
jquery中的ajax
下面簡單介紹下ajax請求里面的主要幾個參數(shù):
-
url:一般為String類型的參數(shù),發(fā)送請求的地址。
-
type:一般String類型的參數(shù),請求方式主要用(post或get)默認(rèn)為get。
-
data:一般為Object或String類型的參數(shù),發(fā)送到服務(wù)器的數(shù)據(jù)。如果已經(jīng)不是字符串,將自動轉(zhuǎn)換為字符串格式
-
dataType:預(yù)期服務(wù)器返回的數(shù)據(jù)類型
-
success:要求為Function類型的參數(shù),請求成功后調(diào)用的回調(diào)函數(shù),一般有兩個參數(shù)。
(1)由服務(wù)器返回,并根據(jù)dataType參數(shù)進(jìn)行處理后的數(shù)據(jù)。
(2)描述狀態(tài)的字符串。
function(data, textStatus){
//data可能是xmlDoc、jsonObj、html、text等等
}
-
error:請求失敗時被調(diào)用的函數(shù)
3. a標(biāo)簽中href 屬性
常用的a便簽中的href屬性也可以發(fā)送請求到后臺,后臺有相應(yīng)的處理方法即可。
a便簽
后臺處理方法
以上三種方式是我總結(jié)的工作中比較常用的幾種方法,尤其是form表單提交數(shù)據(jù)。