struts 中的标签 用法详解

jsp脚本和标签:实现循环和分支逻辑 jsp脚本和标签:实现循环和分支逻辑 jsp脚本和标签:实现循环和分支逻辑 jsp脚本和标签:实现循环和分支逻辑 立即下载

iterate主要用来处理在页面上输出集合类,集合一般来说是下列之一:
1、 java对象的数组

2、 ArrayList、Vector、HashMap等

具体用法请参考struts文档,这里不作详细介绍

现在定义一个class,User.java 把它编译成User.class

package example;

import java.io.Serializable;
public final class User implements Serializable {
private String name = null;
private String password = null;

public String getName () {
return (this.name);
}

public void setName(String name) {
this.name = name;
}

public String getPassword () {
return (this. password);
}

public void setPassword (String password) {
this. password = password;
}

}

然后在一个struts webapplication中创建一个jsp,例如iterate.jsp



<%@ page language="java" %>
<%@ page import="example.*"%>
<%@ taglib uri="/WEB-INF/struts-bean.tld" prefix="bean" %>
<%@ taglib uri="/WEB-INF/struts-logic.tld" prefix="logic" %>

<%
java.util.ArrayList list = new java.util.ArrayList();
User usera=new User();
usera.setName("white");
usera.setPassword("abcd");
list.add(usera);
User userb=new User();
userb.setName("mary");
userb.setPassword("hijk");
list.add(userb);
session.setAttribute("list", list);

%>

<html><body><table width="100%">

<logic:iterate id="a" name="list" type=" example.User ">

<tr><td width="50%">

name: <bean:write name="a" property="name"/>

<td/><td width="50%">

password: <bean:write name="a" property="password"/>

</td></tr>

</logic:iterate>

</table></body></html>
将User.class, iterate.jsp放到相应的目录,运行iterate.jsp你就可以看到iterate的效果了

iterate标记
id 脚本变量的名称,它保存着集合中当前元素的句柄。
name 代表了你需要叠代的集合,来自session或者request的属性。
type 是其中的集合类元素的类型

bean的write标记是用来将属性输出的,name用来匹配iterate的id,property用来匹配相应类的属性<logic:iterate>用法详解22007-04-04 20:34<login:iterate>标记用于在页面中创建一个循环,以此来遍历如数组、Collection、Map这样的对象。该标记的功能强大,在Struts应用的页面中经常使用到。
1、对数组进行循环遍历
  使用<logic:iterate>标记可以用于遍历数组,以下是一段示例代码:
程序代码<%
String[] testArray={"str1","str2","str3"};
pageContext.setAttribute("test",testArray);
%>
<logic:iterate id="show" name="test">
<bean:write name="show"/>
</logic:iterate>
  在上面的代码中,首先定义了一个字符串数组,并为其初始化。接着,将该数组存入pageContext对象中,命名为test1。然后使用<logic:iterate>标记的name属性指定了该数组,并使用id来引用它,同时使用<bean:write>标记来将其显示出来。其结果为:
str1
str2
str3

  另外,还可以通过length属性来指定输出元素的个数。如下面的代码:
程序代码<logic:iterate id="show" name="test" length="2" offset="1">
<bean:write name="show"/>
</logic:iterate>
  其中length属性指定了输出元素的个数,offset属性指定了从第几个元素开始输出,如此处为1,则表示从第二个元素开始输出。所以该代码的运行结果应当输出:
str2
str3

  另外,该标记还有一个indexId属性,它指定一个变量存放当前集合中正被访问的元素的序号,如:
程序代码<logic:iterate id="show" name="test" length="2" offset="1" indexId="number">
<bean:write name="number"/>:<bean:write name="show"/>
</logic:iterate>
其显示结果为:
1:str2
2:str3

2、对HashMap进行循环遍历
程序代码<%
HashMap countries=new HashMap();
countries.put("country1","中国");
countries.put("country2","美国");
countries.put("country3","英国");
countries.put("country4","法国");
countries.put("country5","德国");
pageContext.setAttribute("countries",countries);
%>
<logic:iterate id="country" name="countries">
<bean:write name="country" property="key"/>:
<bean:write name="country" property="value"/>
</logic:iterate>
  在bean:write中通过property的key和value分别获得HaspMap对象的键和值。其显示结果为:
country5:德国
country3:英国
country2:美国
country4:法国
country1:中国
  由结果可看出,它并未按添加的顺序将其显示出来。这是因为HaspMap是无序存放的。

3、嵌套遍历
程序代码<%
String[] colors={"red","green","blue"};
String[] countries1={"中国","美国","法国"};
String[] persons={"乔丹","布什","克林顿"};
ArrayList list2=new ArrayList();
list2.add(colors);
list2.add(countries1);
list2.add(persons);
pageContext.setAttribute("list2",list2);
%>
<logic:iterate id="first" name="list2" indexId="numberfirst">
<bean:write name="numberfirst"/>
<logic:iterate id="second" name="first">
<bean:write name="second"/>
</logic:iterate>
<br>
</logic:iterate>
  运行效果:
0 red green blue
1 中国 美国 法国
2 乔丹 布什 克林顿

来源: http://blog.flashtc.com/article.asp?id=123

HSMS/SECS/GEM/GEM300半导体通讯协议介绍 HSMS/SECS/GEM/GEM300半导体通讯协议解决方案介绍 目录 SECS/GEM协议通讯 1 目录 2 1.介绍 3 1.1 产品概述 3 1.1.1 高扩展性 4 1.2 通讯实现 4 1.2.2多主机实现 4 1.3 当前的SEMI标准 5 1.3.1 功能跟友商对比 6 1.4 软件灵活性 7 1.5 无需学习SECS 7 1.6 自定义消息传递 8 1.7 记录收集 8 1.8 SECS Manual文档 8 1.9 产品清单 8 2 产品结构 9 2.1 控制面板 9 2.2 使用环境 阅读详情

相关推荐

自适应粒子群优化(Adaptive Particle Swarm Optimization,APSO

下面是一个关于自适应粒子群优化(Adaptive Particle Swarm Optimization,APSO)的博客,希望可以帮助您。提示:以下是本篇文章正文内容,下面案例可供参考在上面的代码中,表示粒子的数量,表示解空间的维度,表示迭代次数,表示优化的目标函数。在__init__方法中,我们初始化了粒子群的位置和速度,并将每个粒子的位置作为其最优解,将其适应度值初始化为正无穷。我们还初始化了学习因子和惯性权重的参数。在run方法中,我们迭代了次,计算每个粒子的适应度值和最优解。

weixin_52026057的博客 9917

struts logic:itereate bean:write 标签

Iterate主要用来处理在页面上输出集合类,集合一般来说是下列之一: 1、 java对象的数组 2、 ArrayList、Vector、HashMap等 具体用法请参考struts文档,这里不作详细介绍 现在定义一个class,User.java 把它编译成User.class package example; import java.io.Seria...

老朱的专栏 435

spark 适配达梦数据库

spark 适配达梦数据库 版本 spark3.0.0 scala2.12.10 DM Database Server 64 V8 步骤一: 引驱动包: SBT方式: "com.dameng" % "Dm8JdbcDriver18" % "8.1.0.157", maven方式: <dependency> <groupId>com.dameng</groupId> <artifactId>Dm8JdbcDriver18</artifac

_@Eva@_的博客 2092

struts开发实践[转]

一、struts使用小贴士(mainly from《struts in action》)1. 在actionForm中使用array以匹配重复的变量。例如在使用multibox时,相对应的可以在form中定义array。2.使用显示collection的记录总数。 eg:。如果resultList有两条记录,则显示2。3. 显示循环序号标记:    4.使用检查对象是否存在。使用检查属性是否存

871

AI+AB测试提升电商主图点击率实战指南

在电商运营中,主图点击率(CTR)是衡量商品吸引力的核心指标,直接影响转化率和订单增长。通过AI技术批量生成高质量主图素材,结合数据驱动的AB测试方法,可以显著提升点击率。AI工具如MidJourney和Stable Diffusion能够快速生成多样化视觉方案,而自动化处理流水线则确保素材规格统一。AB测试体系通过多维变量控制和流量分配策略,科学验证不同素材效果。这种方法特别适用于需要快速迭代的电商场景,某女装店铺案例显示CTR从1.2%提升至3.8%,验证了AI+数据协同优化的技术价值。

weixin_29058331的博客 298

【开源】基于TI ADS1299与ESP32的8通道脑电采集设备YuEEG全解析

本文详细解析了基于TI ADS1299芯片与ESP32主控的开源8通道脑电采集设备YuEEG。内容涵盖硬件设计、固件驱动开发及Python上位机软件实现,提供了从电路连接、SPI通信配置到数据读取与实时波形显示的全套教程。该项目为学习脑机接口(BCI)与高精度生物电信号采集提供了完整的开源解决方案,适合创客、学生及嵌入式开发者实践。

weixin_42576410的博客 1251

JSTL标签logic:iterate详解

&lt;logic:iterate&gt; 是Logic 标签库中最复杂的标签,也是用途最广的一个标签,它能够在一个循环中遍历数组、Collection、Enumeration、Iterator 或 Map 中的所有元素    length    属性指定需要遍历的元素的数目, 如果没有设置length 属性, 就遍历集合中的所有元素.  offset      属性指定开始遍历的起始位置, ...

lemon 720

【用unity实现100个游戏之15】开发一个类保卫萝卜的Unity2D塔防游戏5(附项目源码,完结)

本期是本项目的最后一篇,主要内容是配置环境、生成不同敌人、结束重开。

向宇的博客,专注php/web全栈 unity游戏开发,欢迎大家评论纠错 2575

Struts标签详解

Struts提供了五个标签库,即:HTML、Bean、Logic、Template和Nested。 HTML 标签:         用来创建能够和Struts 框架和其他相应的HTML 标签交互的HTML 输入表单 Bean 标签:         在访问JavaBeans 及其属性,以及定义一个新的bean 时使用 Logic 标签:          管理条件产生的输出和对

sun Andy Blog 1056

NR PUCCH(一) PUCCH format 0/1

NR中PUCCH物理信道用来发送上行控制信息Uplink Control Information(UCI),当然UCI也可以在PUSCH上发送。UCI 内容包括:CSI,HARQ ACK/NACK ,SR 及上述三者的组合信息。 那先看下PUCCH format ,序列的生成及资源映射的相关内容。 NR中支持5种格式PUCCH,根据PUCCH format占用时域符号长度分为短PUCCH(1-2个符号,PUCCH 0/2)和长PUCCH(4-14个符号,PUCCH1/3/4)。使用短PUCCH 能够支

asd199086的博客 6060

【YOLO目标检测全栈实战】68 模型量化:从FP32到INT8,精度不掉,速度翻倍

摘要: 模型量化能显著提升推理速度(如YOLOv5s帧率从15FPS提升至38FPS),但需避免三大误区:1)校准集需覆盖实际场景,而非随机采样;2)敏感层(如检测头)应保留FP32精度;3)预处理必须与量化前后一致。通过混合精度量化(Backbone用INT8,检测头用FP32)和逐通道量化,可实现<1%的mAP损失。关键步骤包括校准数据准备、量化感知训练及逐层精度评估,最终在Jetson Nano等边缘设备上实现速度与精度的平衡。

企鹅码农的专属播客,分享10多年的实战案例和经验解读,包含YOLO、RT-DETR、AI等各个工作领域。 147

Struts标签库详解,非常好的Struts标签详解

本文转自:http://hi.baidu.com/xzkcz/blog/item/5cf9f91f01beb9f4e0fe0bd4.html 作者:xzkcz Struts提供了五个标签库,即:HTML、Bean、Logic、Template和Nested。 HTML 标签:         用来创建能够和Struts 框架和其他相应的HTML 标签交互的HTML 输入表单 Bea

王萌萌 2053

安装 miniconda linux

安装 miniconda linux

jacke121的专栏 1万+

Struts2框架——Struts的错误回显以及struts标签

Struts的错误回显以及struts标签 ​ 本次记录一下 Struts 的错误回显以及 struts 框架前端标签的简单用法 Struts 的错误回显 ​ 在 struts.xml 中的 result 标签中,把 name 属性的值设置成 input,这样当数据出现异常时,会自动回显到后边声明的 jsp 页面 <action name="register" class="com.l...

scfor333的博客 458

数学建模模型总结

这是本人在两年内准备参加数学建模竞赛搜集到的模型资料,已经经过了本人的筛选和整理,希望能够对准备参加数学建模竞赛的学弟学妹们提供一些帮助!

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

Struts 常用标签

首先加载标签库 &lt;%@ taglib uri="/struts-tags" prefix="s" %&gt; 一、数据标签 1、set set标签赋予变量一个特定范围内的值. 当希望给一个变量赋一个复杂的表达式,每次访问该变量而不是复杂的表达式时用到. 其在两种情况下非常有用: 复杂的表达式很耗时 (性能提升) 或者很难理解 (代码可读性提高). 参数: 名称 必填 缺省 类型 ...

qq_41454799的博客 450

OV9734 DATASHEET,完整规格书

OV9734完整规格书,包括电气参数,尺寸规格,寄存器配置表等

Struts-Tags标签的用法

一、通用标签(常用) property property:<s:property value=“name” /> property取字符串:<s:property value="‘你好’" /> property设置默认值:<s:property value=“admin” default=“我” /> set set设值(使用默认scop时,存在ActionContext和request中;id、name已废弃,现用var、value存储对象值;常用于换名以便利使用)

岛田悠米 1520

lwip-2.0.3

lwip是瑞典计算机科学院(SICS)的Adam Dunkels 开发的一个小型开源的TCP/IP协议栈。实现的重点是在保持TCP协议主要功能的基础上减少对RAM 的占用。

Struts2框架标签

Struts2框架标签

qq_42640067的博客 1154

struts的LOGIC标签详解

Struts的Logic标签可以根据特定的逻辑条件来判断网页的内容,或者循环遍历集合元素,它和HTML,Bean标签是Struts应用种最常用的三个标签.它的功能主要是比较运算,进行字符串的匹配,判断指定的内容是否存在,循环遍历集合,进行请求转发和重定向,下面具体的说明标签的用途:变量等于指定的常量变量不等于指定的常量变量小于指定的常量变量小于或者等于指定的常量变量大于指定

it_man的专栏 8643

struts2标签 java代码_struts2标签详解

struts2标签讲解要使用Struts2的标签,只需要在JSP页面添加如下一行定义即可:Struts2的标签共分为五大类:一、逻辑控制标签用于进行逻辑控制输出,主要分为以下几类:1、条件标签:用于执行基本的条件流转拥有一个test属性,其表达式的值用来决定标签里的内容是否显示,北京欢迎你上海欢迎你同上2、迭代标签:用于遍历集合(java.util.Collection)或者枚举值(java.ut...

weixin_32730471的博客 644

Struts2标签示例

&lt;%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%&gt; &lt;%@ page import="com.rao.bean.Sex"%&gt; &lt;%@ taglib prefix="s" uri="/struts-tags"%&gt;

暴走的石头 579

详解Struts标签的分类

一. Struts标签分类 1.Struts提供了很多的标签,依据功能和使用习惯被分到了五个标签库中: 2.Bean Tags:该标签库包含的标签可以用来创建bean、访问bean和访问bean的属性。同时提供了依据cookies、headers和parameters的值创建

【郭林专刊】云哥中国 I T 民工 371

Struts:标签库

1,Struts2标签库概述 Struts2标签库相对于Struts1进行了巨大的改进,支持OGNL表达式,不依赖任何表现层技术(可以在各种表现层技术中使用)。 我们可以在struts2-core-xxx.jar压缩文件的META-INF目录下找到struts-tags.tld文件,这个文件里定义了Struts2的标签。 Struts2对整个标签库提供了严格的分类,Strut2把所有标签都定义在一个s标签库里。虽然Struts2把所有的标签都定义在URI为"/struts-tags"的空间下,但依然

燕双嘤 1929

struts中标签的用法

标签只在要显示特定类型的 Struts 消息时才显示其内容。message 属性定义了消息类型:如果为 true,那么就考虑正常消息,否则就考虑错误消息。在 标签中, 标签枚举并显示相应类型的每一个消息。因而在下面 JSP 页中,第一部分显示所有正常应用程序消息,第二部分所有显示错误。                        There was a problem with your r

chho的专栏 1495

Struts 中 Html 标签库 的用法(第二组标签,与Form相关的标签 )

继续学习Struts提供的HTML标签库。by Budi Kurniawan 在本文系列的第一部分中我讲述了如何使用Struts提供的HTML标签库来配置一个Struts应用程序。我还介绍了该标签库中的一类标签:独立使用的标签。在第二部分中我将继续介绍第二类标签:与form相关的标签。与form相关的标签包括 标签本身以及所有必须包含在其中的标签。比如,和标签就是和form相关的标签,因为如果不把

键者天行 9082
上一篇: 使用Eclipse+struts开发乱码问题解决
下一篇: 收藏面向对象方面文章
devfan
博客等级 码龄22年 45粉丝 88原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值