struts 标签 logic:iterate使用 logic:iterate
我就是靠这个文档实现logic:iterate的循环的<br>struts 标签 logic:iterate使用 logic:iterate<br><br>第一页 是struts官方的说明,<br>第二页 是个例子<br>第三页 是我实现的arrayList放入标签的方法。<br>这是页面文件<br><%@ page language="java"<br> import="java.util.*,cn.edu.bit.zgc2d.accountQuery.*" pageEncoding="GBK"%><br><%@ taglib uri="http://jakarta.apache.org/struts/tags-bean"<br> prefix="bean"%><br><%@ taglib uri="http://jakarta.apache.org/struts/tags-html"<br> prefix="html"%><br><%@ taglib uri="http://jakarta.apache.org/struts/tags-logic"<br> prefix="logic"%><br><!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"><br><html><br> <head><br> </head><br> <body><br> <table><br> <tr><br> <td><%@ include file="../menu.txt"%><br> </td><br> </tr><br> </table><br> <table width=800><br> <tr><br> <td height=100 width=30><br> <img src=../images/small_2.gif><br> </td><br> <td><br> 账务查询<br> <br><br> 基本信息查询。<br> </td><br> </tr><br> </table><br> <table width=800><br> <tr><br> <td height=1 width=700 bgcolor=gray colspan=2></td><br> </tr><br> </table><br> <table width=800><br> <tr><br> <td height=100 width=30><br> <img src=../images/small_2.gif><br> </td><br> <td><br> 基本信息查询。<br> </td><br> </tr><br> </table><br> <table><br> <tr><br> <td WIDTH=100 bgcolor=#bfbfbf><br> 帐号<br> </td><br> <td WIDTH=100 bgcolor=#bfbfbf><br> 帐户别名<br> </td><br> <td WIDTH=100 bgcolor=#bfbfbf><br> 是否为主帐户<br> </td><br> </tr><br> <logic:iterate id="item" name="list" indexId="index"><br> <tr><br> <td WIDTH=100 bgcolor=F2F2F2><br> <a href="www.sina.com.cn?abc=<bean:write name="item" property="account" />"><bean:write name="item" property="account" /><br> </td><br> <td WIDTH=100 bgcolor=F2F2F2><br> <bean:write name="item" property="other_name" /><br> </td><br> <td WIDTH=100 bgcolor=F2F2F2><br> <bean:write name="item" property="is_main_account" /><br> </td><br> </tr><br> </logic:iterate><br> </table><br> </body><br></html><br>这是action<br>public class InformationAction extends Action {<br> public ActionForward execute(ActionMapping mapping, ActionForm form,<br> HttpServletRequest request, HttpServletResponse response) {<br> InformationForm informationForm = (InformationForm) form;// TODO Auto-generated method stub<br> //业务开始<br> Connection conn = null; Statement st = null; ResultSet rs = null;<br> try {<br> db db = new db();<br> // 打开数据库<br> conn = db.conn();<br> // 创建st<br> st = conn.createStatement();<br> // 组织sql并执行<br> HttpSession session_account = request.getSession();<br> String account = (String) session_account.getAttribute("account");<br> String sql = "select * from account where main_account=" + account<br> + "order by is_main_account desc";<br> rs = st.executeQuery(sql);<br> // 组建arrayList列表<br> ArrayList list = new ArrayList();<br> while (rs.next()) {<br> accountBean bean = new accountBean();<br> bean.setArea(rs.getString("area")); bean.setKind(rs.getInt("kind")); bean.setAccount(rs.getString("account")); bean.setMain_account(rs.getString("main_account")); bean.setType(rs.getInt("type")); bean.setOther_name(rs.getString("other_name")); bean.setPassword(rs.getString("password")); bean.setIs_main_account(rs.getInt("is_main_account")); bean.setMoney(rs.getString("money")); bean.setId(rs.getInt("id"));<br> list.add(bean);<br> }<br> HttpSession session = request.getSession();<br> session.setAttribute("list", list);<br> return mapping.findForward("success");<br> } catch (Exception e) { e.printStackTrace(); } <br> //业务结束<br> return null;<br> }<br>}//自己将需要的包导入<br>bean文件<br>package cn.edu.bit.zgc2d.accountQuery;<br><br>public class accountBean {<br> private String area;<br> private int kind;<br> private String account;<br> private String main_account;<br> private int type;<br> private String other_name;<br> private String password;<br> private int is_main_account;<br> private String money;<br> private int id;<br> public String getArea() {<br> return area;<br> }<br> public void setArea(String area) {<br> this.area = area;<br> }<br> public int getKind() {<br> return kind;<br> }<br> public void setKind(int kind) {<br> this.kind = kind;<br> }<br> public String getAccount() {<br> return account;<br> }<br> public void setAccount(String account) {<br> this.account = account;<br> }<br> public String getMain_account() {<br> return main_account;<br> }<br> public void setMain_account(String main_account) {<br> this.main_account = main_account;<br> }<br> public int getType() {<br> return type;<br> }<br> public void setType(int type) {<br> this.type = type;<br> }<br> public String getOther_name() {<br> return other_name;<br> }<br> public void setOther_name(String other_name) {<br> this.other_name = other_name;<br> }<br> public String getPassword() {<br> return password;<br> }<br> public void setPassword(String password) {<br> this.password = password;<br> }<br> public int getIs_main_account() {<br> return is_main_account;<br> }<br> public void setIs_main_account(int is_main_account) {<br> this.is_main_account = is_main_account;<br> }<br> public String getMoney() {<br> return money;<br> }<br> public void setMoney(String money) {<br> this.money = money;<br> }<br> public int getId() {<br> return id;<br> }<br> public void setId(int id) {<br> this.id = id;<br> }<br>}<br> `struts`是一个著名的Java Web开发框架,它提供了一套基于MVC(Model-View-Controller)设计模式的标签库,使得开发者可以更方便地构建动态网页应用。在`struts`的标签库中,`logic:iterate`是一个非常重要的标签,用于遍历集合对象,如`List`、`Map`或数组,并对每个元素执行循环操作。 `logic:iterate`标签的主要属性包括: 1. `id`: 用于给循环中的当前元素创建一个变量,例如`item`,在循环体内部可以通过这个变量访问当前元素。 2. `name`: 指定包含要迭代对象的bean的名字,这个bean通常由Action类设置到请求或session作用域中。 3. `property`: bean的属性名,该属性的值应为一个集合或数组。 4. `indexId`: 可选,设置一个变量来存储当前循环的索引。 5. `length`: 可选,用于指定迭代的长度,如果集合大小小于这个长度,超出部分不会被迭代。 6. `offset`: 可选,指定开始迭代的偏移量,即从集合的第几个元素开始。 在给出的示例中,`logic:iterate`标签用于遍历名为`list`的集合,这个集合是在Action类中通过查询数据库得到的,并且设置到了请求作用域中。`list`中的每个元素是`accountBean`类型的对象,包含了账户的相关信息,如`account`、`other_name`和`is_main_account`等。 HTML页面部分的代码显示了如何在表格中使用`logic:iterate`标签遍历`list`集合,对于每个`accountBean`对象,将其属性值渲染到表格的相应单元格中。`bean:write`标签用于输出bean的属性值,例如`accountBean`的`account`、`other_name`和`is_main_account`。 Action类`InformationAction`负责处理请求,从中获取`account`信息,然后通过数据库查询获取与之关联的所有账户信息,将结果存储在一个`ArrayList`中,这个列表随后被设置到`HttpServletRequest`的session属性`list`中。`accountBean`类是用来封装数据库查询结果的,包含了账户的各种属性。 `logic:iterate`标签在`struts`中是一个强大的工具,允许开发者轻松地处理集合数据,将它们展示在页面上。通过结合`bean:write`等其他标签,可以方便地从后台模型传递数据到视图层,实现数据的动态渲染。这个示例清晰地展示了如何在实际项目中运用`struts`标签库进行数据展示和处理。
















剩余6页未读,继续阅读


- 粉丝: 5
我的内容管理 展开
我的资源 快来上传第一个资源
我的收益
登录查看自己的收益我的积分 登录查看自己的积分
我的C币 登录后查看C币余额
我的收藏
我的下载
下载帮助


最新资源
- (源码)基于Arduino的PWM高分辨率DAC实验.zip
- 网络信息技术在高中体育教学中的应用.docx
- 微机计算机控制技术课后于海生(第版)习题详解答案.doc
- 大型ORACLE数据库系统的优化设计方案.docx
- (源码)基于Rust语言的PlantOS软件开发SDK.zip
- 行政事业单位资产清查软件应用.doc
- 大数据时代高校信息化管理研究.docx
- 浙江(秋)(秋)计算机网络专业技术真题附标准答案(全面).doc
- (聊天室)JSP课程设计报告.doc
- 大数据时代计算机网络技术课程教学改革的实践研究.docx
- (源码)基于Arduino的物联网模拟信号监控系统.zip
- 借助 Real-CUGAN 神经网络模型优化画质欠佳的动漫番剧(含网盘链接)
- (源码)基于FORTH语言的DT操作系统.zip
- 基于Real-CUGAN神经网络模型对一些画质不太好的动漫番剧进行画质改善(附带网盘链接)
- (源码)基于Python的无人机配送路径规划系统.zip
- 树莓派机器人项目实战指南


