二、List的c out。如果你的實體繼承了List,而添加了一些屬性,想要在頁面直接輸出這些屬性,你可能這樣做:
<c:out value="${mylist.myproperty}"/>但是你會發現這是個錯誤:
javax.servlet.ServletException: The operator was supplied with an index value of type to be applied to a List or array, but that value cannot be converted to an integer.
原因是這樣的,當表達式的實體是一個List或者數組數型的話,"."操作符後面跟的屬性一律被看作是List或數組的下標了。JSTL試圖把它們轉成整型,失敗就會報錯。
不但Out標籤存在這個特點,其他也一樣。所以在設計實體的時候,如果需要用到List的功能,最好加一個List的成員變量。不需要直接繼承。