日韩无码专区无码一级三级片|91人人爱网站中日韩无码电影|厨房大战丰满熟妇|AV高清无码在线免费观看|另类AV日韩少妇熟女|中文日本大黄一级黄色片|色情在线视频免费|亚洲成人特黄a片|黄片wwwav色图欧美|欧亚乱色一区二区三区

RELATEED CONSULTING
相關(guān)咨詢
選擇下列產(chǎn)品馬上在線溝通
服務(wù)時(shí)間:8:30-17:00
你可能遇到了下面的問題
關(guān)閉右側(cè)工具欄

新聞中心

這里有您想知道的互聯(lián)網(wǎng)營銷解決方案
Struts2iterator介紹及功能詳解

一、Struts2 iterator介紹.

這個(gè)標(biāo)簽主要的的作用就是跌代出集合。

value屬性表示需要跌代顯示出來的值。

status屬性,又來保存跌代時(shí)的一些狀態(tài)值。

注:1.如果需要引用valueStack中的值,需要使用這樣的形式。

//userList在action部分被保存在Request中,所以使用#加屬性名來引用值。

2.如果集合的值是通過action的方法,假設(shè)我們的action中有一個(gè)getListMenu方法,返回一個(gè)List集合。

我們可以使用如下的形式來引用這個(gè)集合,并用s:iterator來輸出。

3.Struts2 iterator的value使用定義好的方式,如:

//這樣跌代輸出的值就是1.2.3.4這四個(gè)值。

二、Struts2 iterator中輸出具體值,如果,在上面我們的list中的對(duì)象,有兩個(gè)屬性,都是String類型,一個(gè)是name,一個(gè)是url。

我們可以這樣來引用。

1.  //這樣我們將可以輸出跌代對(duì)象的name屬性值。

2. 如果我們希望使用 來將跳轉(zhuǎn)過后的url進(jìn)行處理,該如何來做?

 //%{}ognl的表達(dá)式,這樣的值能夠?qū)rl的值進(jìn)行 的處理

實(shí)際上就是轉(zhuǎn)為絕對(duì)路徑。這樣,我們就可以對(duì)付一些因跳轉(zhuǎn)換產(chǎn)生的路徑問題。

原因:因?yàn)?以后,當(dāng)前的對(duì)象應(yīng)該就在ValueStack頂部了,這樣當(dāng)然的url實(shí)際上就是對(duì)象的url屬性了

三、使用ognl輸出對(duì)應(yīng)的值。

使用此表達(dá)式,會(huì)生成一個(gè)文本框,并且,如果request.attribute中有l(wèi)oginNames屬性,將會(huì)做為些文本框的默認(rèn)值。

如果只使用#request.loginNames在struts2的標(biāo)簽內(nèi)部,是不會(huì)顯示任何值的,注意外面加上的%{}附號(hào),才會(huì)被正常的使用。

如果希望如EL語言一樣直接輸出文件,如在一個(gè)之間的innerHTML文本為#request.loginNames的值,我們只要使用: 使可以正常使用!

注:

1.${}是EL語言的 %{}這樣的形式是ognl表過式語言的,在struts2的標(biāo)簽內(nèi)部,使用%{}這樣的形式,在標(biāo)簽外部可以使用${}EL語言的方式。如果在struts2的標(biāo)簽內(nèi)部使用${}這樣的方式,會(huì)出現(xiàn)以下的錯(cuò)誤提示:

According to TLD or attribute directive in tag file, attribute value does not accept any expressions

2.很多時(shí)候,我們使用struts2的一些標(biāo)簽,屬性是需要接受集合的,如果集合是保存在request,session,或者是值棧(非根對(duì)象的棧頂),可以使用#變量名的方式,如果獲取的值是在Action中通過特定的方法來獲取,就需要使用如 value="userList"這樣的方式,只是去掉了前面的#。

3.可能我對(duì)一些值棧,根對(duì)象,棧頂?shù)囊恍﹐gnl知識(shí)有些不錯(cuò)誤,如果發(fā)現(xiàn)了問題,請(qǐng)幫助指出,謝謝。


網(wǎng)頁標(biāo)題:Struts2iterator介紹及功能詳解
分享網(wǎng)址:http://m.5511xx.com/article/copsiec.html