jsp中定義和使用方法樣本介紹_JSP編程

來源:互聯網
上載者:User
在jsp中,如果需要處理複雜資料時,在上方定義一個java方法是很有效解決方案,把處理資料的責任推給該方法,然後該jsp頁面的主流程就不受影響。當然也可以使用js定義方法來處理,js似乎更善於定義這樣的方法來處理前台資料,但有時候jsp和js之間倒騰資料時會出亂碼或者報一些找不到對象的錯誤,因此他們之間的互相傳值還是越少越好。

看一看jsp中定義一個字串處理的方法:
複製代碼 代碼如下:

<%!
String splitString(String str, int a) {
if (str != null && str.trim().length() > 0 && a > 0) {
// 取得該字串的位元組長度
int length = str.getBytes().length;
// 全部不包括漢字
if (str.length() == length) {
// 如果截取長度是字串長度以內,就substring,否則就取這個字串
if (a < str.length()) {
return str.substring(0, a);
} else {
return str;
}
} // 含有漢字
else {
StringBuffer sb = new StringBuffer();
// 截取演算法 遍曆字串,並且監測a值
for (int i = 0; i < str.length() && a > 0; i++) {
// 如果是漢字算2個長度。
if (str.charAt(i) >= '\u4e00' && str.charAt(i) <= '\u9fa5') {
// 如果是漢字且不是最後一個字元,就加上,否則不加
if (a > 1) {
sb.append(str.charAt(i));
a -= 2;
}
// 不是漢字只算一個長度
} else {
sb.append(str.charAt(i));
a--;
}
}
return sb.toString();
}
}
return "輸入有誤";
}

%>

該方法的功能是,傳入一個字串和長度,返回截取後的字串,長度會按照漢字兩個、字母數字一個的方式來統計,如果最後一個是漢字,那麼這個漢字就放棄掉,絕不能出現半個漢字的情況。

jsp中定義方法,需要注意以下幾點:

1,需要使用<%! %>這樣的標籤包起來,這是jsp中定義變數或者方法的標誌。

2,如果在方法中需要使用內建對象out時,一定要在方法的參數列表中傳過來,並且要讓方法跑出一個IO異常。

3,方法的範圍就不要定義了,反正就是內部使用,直接使用預設範圍的就可以了。
相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.