lue 为 字符串数组.
接下来外层的标签遍历HashMap 中的所有元素, 内层的标签访问每个元素的value 属性, 遍历value 属性引用的字符串数组中的所有元素.
3. 设置被遍历的变量
可以通过以下方式来设置需要遍历的变量
(1) 设置name 属性, name 属性指定需要遍历的集合或Map, 例如:
< logic:iterate id=element name="Animals" >
< bean:write name="element">< /bean:write>
< / logic:iterate >
浅谈Struts标签logic:iterate(3)
时间:2011-10-02
(2) 设置name 属性和property 属性, name 属性指定一个JavaBean, property 属性指定JavaBean 的 一个属性, 这个属性为需要遍历的集合或Map, 例如:
< logic:iterate id=element name="catelog" indexId="ind">
< bean:write name="ind">< /bean:write>
< bean:write name="element" property="key">< /bean:write>
< logic:iterate id=elementValue name="element" property="value" offset="1" length="3" >
--------
(3) 设置collection 属性, collection 属性指定一个运行时表达式, 表达式的运算结果为需要遍历 的集合或Map, 例如:
< logic:iterate id=header collection?< % ="request.getHeaderNames ()%">">
4. 读取JavaBean 中的数据
(1) 在Jsp 页面中加入JavaBean 如:
< ? xml:namespace prefix = jsp />< jsp:useBean id=articleClasses class=com.GetArticleClasses>
< / jsp:useBean>
上面这个JavaBean 要求必须存在一个集合数组对象,如Vector,Collection,ArrayList 等;在这个 JavaBean 的构造函数中,取得数据库中的数据,并将其存入数组对象中。
(2) 使用 标签,取出JavaBean 中存放的数组对象中的数据
id="aClasses" // id : 给检索出的元素所命的名.
name="articleClasses" // name : JavaBean 在页面中所设置的引用ID.
property="coll"> // coll : JavaBean 中的集合数组属性名称.
< ?xml:namespace prefix = html />< html:link
paramId="classId"
paramName="aClasses"
paramProperty="classId">
< bean:write name="aClasses" 与< logic:iterate>标签中的id 属性相对应
property="className" /> // 取出JavaBean中, 存放在集合对象中的,对象的className 属性值
(3) 在JavaBean 中的集合对象中存放实体对象的语句如下:
......
public class GetArticleClasses
{
// 数据集合
private Collection coll;
// 返回数据集合
public Collection getColl()
{
return coll;
}
// 构造函数, 取出数据,存入集合中
public GetArticleClasses()
{
coll = new ArrayList();
try{
// 数据库连接
Connection connection = DBConnection.getConnection();
if(connection != null)
{
Statement statement = connection.createStatement();
ResultSet resultset;
ArticleClass articleclass;
resultset = statement.executeQuery("SELECT * FROM table ORDER BY id");
while( resultset.next())
{
articleclass = new ArticleClass();
articleclass.setId(resultset.getInt("id"));
articleclass.setClassId(resultset.getString("class"));
articleclass.setClassName(resultset.getStrin
|