把这些数据放到ArrayList中,再把它放到session中,在显示页面用logic的iterate标记显示:
<logic:iterate id="author" name="arraylist" >
<tr>
<td width="25%">
<bean:write name="author" property="id" filter="true"/>
</logic:iterate>
这里的arraylist就是上面放到session中的,author用来标示arraylist中元素,“id”是元素中的一个属性。
为了操作方便,可以把没一行数据封装到一个javabean中,每个字段对应bean中具有get**,set**方法的属性。这样就可以很方便的使用上面的方法了。具体可以去看logic标记库的说明文档。
<logic:iterate id="author" name="arraylist" >
<tr>
<td width="25%">
<bean:write name="author" property="id" filter="true"/>
</logic:iterate>
这里的arraylist就是上面放到session中的,author用来标示arraylist中元素,“id”是元素中的一个属性。
为了操作方便,可以把没一行数据封装到一个javabean中,每个字段对应bean中具有get**,set**方法的属性。这样就可以很方便的使用上面的方法了。具体可以去看logic标记库的说明文档。
public Enumeration getDepartmentIDElement()//得到数据库中所有部门的编号
public void setDepartmentInfo(int id)//从数据库中得到部门的所有信息,id为部门在数据库的编号Enumeration enum = di.getDepartmentIDElement();
while(enum.hasMoreElements())
{
di.setDepartmentInfo(Integer.parseInt((String)enum.nextElement()));
}
在这段代码之后可以用get()得到各个需要的值,那么我想用Struts来做,那么JSP和Action类该怎么写呢?请指教了。
大体上可以这样写:
action: //把准备显示的每一行信息放到你这里的bean中(不怎么理解你这里的 DepartmentInfo,我的意思是:把每一行数据封装到一个javabean中,每个字段对应bean中具有get**,set**方法的属性。)//然后,再把这bean 作为一个元素放到一个collection,比如ArrayList——departs中。最后把这个collection放到session中:session.setAttribute("departs",departs);jsp页面:<logic:iterate id="depart" name="departs" >
<tr>
<td width="25%">
<bean:write name="depart" property="id" filter="true"/></td> ^这里对应bean的一个属性
</tr>
<td width="25%">
<bean:write name="depart" property="name" filter="true"/></td>
</tr>
.............
</logic:iterate>
只是简单的说明,具体可以参考struts-example等例子。
关于循环显示的问题,昨天刚刚看到struts1.1中引入了nested这个标记库,也可以用来做循环显示,但它还有很强的功能,就是嵌套(顾名思义)。不过,还不会用。你可以关注一下!