第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定

不使用request對象的set方法,而用JSTL的set標簽可以保存這個集合fruits嗎?

<%
????List<String>?fruits?=?new?ArrayList<String>();
????fruits.add("watermelon");
????//不用request對象的set方法?request.setAttribute("fruit",fruits);
%>
<c:set?value="${fruits}"?var="fruit"?scope="request"></c:set>
<c:foreach?items="${requestScope.fruit}"?var="f">
<c:out?value="${f}"></c:out>
</c:foreach>

使用request的setAttribute方法可以存儲fruits集合,但使用set標簽卻存儲不了(因為out標簽沒有輸出),這是因為set標簽不能存儲集合的原因嗎?

正在回答

2 回答

不知道你解決問題了沒,我看了你的例子倒是想明白可。

實例化變量是要申請內存儲存值得,set申明的只是引用關系。你例子里沒有創(chuàng)建有界對象,<c:set?value="${fruits}"?var="fruit"?scope="request"></c:set> 這一行的 ${fruits} 是空的。只要你在上面把list扔到request里或者其他三個對象里,這才創(chuàng)建出一個有效的有界對象,這個值才能獲取到你的List

0 回復 有任何疑惑可以回復我~
#1

慕絲0202390

其實和你說的和setAttribute就是一個意思 把一個存在的數(shù)據(jù) 綁定到某一個 有界對象上
2019-01-16 回復 有任何疑惑可以回復我~

倒不是那個原因。使用set標簽的target 屬性,能選擇javabean用以存值,也可以通過map類型的鍵存值,所以使用set標簽頁可以存放集合。

使用request的原因在與,forEach標簽的使用幾乎都是用于在頁面顯示后臺查詢到的數(shù)據(jù),一般從后臺數(shù)據(jù)庫獲取到的數(shù)據(jù)都是通過request.setAttribute方法把集合放到一個對象中,在通過調用這個對象在頁面中展示值。簡單的說就是,使用forEach標簽遍歷的集合大多數(shù)時候都是從后臺程序獲取的,所以都是存放在請求中。

0 回復 有任何疑惑可以回復我~
#1

綠萬哥哥 提問者

set標簽和request的setattribute方法其實是一樣的吧,只是我在這段這句標簽中存不進去這個集合,要怎么修改呢按你的說法的話
2017-11-30 回復 有任何疑惑可以回復我~
#2

Queen丶Star 回復 綠萬哥哥 提問者

誤解你的意思了!你說的這個問題,不行。因為這不是存儲關系。setAttribute()方法,相對于是創(chuàng)建了一個鍵值對,你可以通過鍵去調用值,但是你不能把值存到鍵上去。"fruit"并不是一個對象,他不能去存放fruits集合。set標簽不能實例化一個集合,只能通過鍵去調用值,所以不能通過像你說的通過set標簽去存放集合,這本身就不是存儲關系。這么說能懂嗎。。
2017-11-30 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消

不使用request對象的set方法,而用JSTL的set標簽可以保存這個集合fruits嗎?

我要回答 關注問題
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號