Struts標籤 logic標籤

2021-06-19 13:54:11 字數 2221 閱讀 1644

logic:iterate

logic:iterate標籤用來迭代集合,您可以使用如下方式來為這個標籤指定其要疊代的集合:

上面所提到的集合可以是:

如果您疊代的集合中含有null的值,這時需要採取一定的措施,因為這時logic:iterate不會在page作用域中建立物件。一般是使用標籤或標籤來判斷一下。

下面是logic:iterate疊代arraylist的示例的物件引用關係和部分**:

圖示 3. logic:iterate中物件的引用關係

圖中的persons列表是在listaction中填充的,在這裡只是簡單的加入了三個person物件,在實際的應用中這些資料應該取自資料庫。具體的**如下:

標籤輸出的結果為:

00001-->趙辰

00002-->李為芳

00003-->王微

logic:present

如果指定的值出現該標籤就會建立其標籤體內的內容。該標籤用於以下情況:

下面的**示例了logic:present標籤檢查具有指定名稱user-agent的header是否出現:

您的瀏覽器是。

logic:notpresent標籤的應用正好和logic:present標籤相反。

logic:messagespresent:

logic:messagespresent標籤用於以下情況:

標籤的message屬性值為true時將以globals.message_key為key在request作用域中查詢message,其它情況下,將name的值作為key查詢,如果name 沒有出現,預設值為globals.error_key。

下面的**示例了logic:messagespresent標籤的典型用法:

標籤logic:messagesnotpresent的應用正好和logic:messagespresent的應用相反

logic:empty

logic:empty標籤是用來判斷是否為空的。如果為空,該標籤體中嵌入的內容就會被處理。該標籤用於以下情況:

下面的**示例了logic:empty標籤判斷集合persons是否為空:

集合persons為空!

logic:notempty標籤的應用正好和logic:empty標籤相反。

logic:match

logic:match標籤用來處理子串匹配問題。

如果指定的值匹配該標籤就會建立其標籤體內的內容。該標籤用於以下情況:

下面的**示例了logic:match標籤的典型用法:

ms ie 6.0

logic:notmatch標籤的應用正好和logic:match標籤相反。

logic:equal

這裡要介紹的不只是logic:equal(=)標籤,而是要介紹一類標籤,這類標籤完成比較運算,包括:

該類標籤的用法類似,我們只介紹logic:equal標籤,其它的留給您自己去完成。

logic:equal是用來判斷是否相等的。如果相等,該標籤體中嵌入的內容就會被處理。該標籤用於以下情況:

logic:forward

我覺得將forward和redirect這兩個動作放到一起對比著介紹更加有利於理解,基於此原因也就將logic:forward和logic:redirect這兩個標籤也拿到這裡一起介紹了。

讓我們看看這兩個動作的區別:

redirect比forward慢,因為瀏覽器要做二次請求。還有就是要注意,在第一次的請求作用域(request作用域)內的bean對於第二次請求是不可見的。

理解了上面描述的區別也就知道了什麼時候該選用logic:forward標籤什麼時候該選用logic:redirect標籤了。logic:forward標籤完成pagecontext.forward()或httpservletresponse.sendredirect(),如何選擇由控制器決定。logic:redirect標籤完成httpservletresponse.sendredirect()。

在使用logic:redirect標籤時我們可以向使用html:link一樣構造baseurl和query引數。如果您感興趣可以參考html:link標籤。

struts技術的logic標籤

一 定義標籤檔案 web.xml tags struts logic web inf struts logic.tld 二 引用標籤檔案 jsp檔案 taglib uri tags struts logic prefix logic 三 標籤檔案說明 struts logic.tld 1 empty...

struts技術的logic標籤

一 定義標籤檔案 web.xml tags struts logic web inf struts logic.tld 二 引用標籤檔案 jsp檔案 taglib uri tags struts logic prefix logic 三 標籤檔案說明 struts logic.tld 1 empty...

struts技術的logic標籤

一 定義標籤檔案 web.xml tags struts logic web inf struts logic.tld 二 引用標籤檔案 jsp檔案 taglib uri tags struts logic prefix logic 三 標籤檔案說明 struts logic.tld 1 empty...