Struts2的标签库

本文深入解析了Struts框架的标签库使用方法,包括通用标签库中的判断、循环及常用标签,以及UI标签库的详细说明,为开发者提供了丰富的实例,帮助理解如何在页面中实现数据展示和回显。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1 通用标签库

1.1 判断标签

<%@ page language="java" contentType="text/html; charset=UTF-8"
    pageEncoding="UTF-8"%>
<%@ taglib uri="/struts-tags" prefix="s"%>
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Insert title here</title>
</head>
<body>
    <!--判断标签  -->
    <!-- set标签中代表的是request.setAttribute("i",3); -->
    <s:set var="i" value="3" scope="request"/>
    <s:if test="#request.i>3">
         i大于3
    </s:if>
    <s:elseif test="#request.i<3">
        i小于3
    </s:elseif>
    <s:else>
        i等于3
    </s:else>
</body>
</html>

1.2 循环标签

  • 遍历list集合
    <!-- 遍历list集合 -->
    <s:iterator var="i" value="{'aa','bb','cc'}">
        <s:property value="#i"/>
    </s:iterator>
  • 遍历map集合
    <!-- 遍历map集合 -->
    <s:iterator var="entry" value="#{'aaa':'111','bbb':'222','ccc':'333'}">
        <s:property value="#entry.key"/> ------<s:property value="#entry.value"/>
    </s:iterator>
  • 按照一定的步长遍历
    <!-- 按照一定步长遍历(包含begin和end) -->
    <s:iterator var="i" begin="1" end="10" step="1">
        <s:property value="#i"/>
    </s:iterator>
  • 嵌套条件标签
    <!-- 嵌套条件标签 -->
    <s:iterator var="i" begin="100" end="120" step="2" status="status">
        <s:if test="#status.count % 3==0">
            <font color="red"><s:property value="#i"/></font>
        </s:if>
        <s:else>
            <s:property value="#i"/>
        </s:else>
    </s:iterator>

1.3 其他常用标签

  • <s:property/>:设置页面内容
  • <s:debug/>:查看值栈
  • <s:date />:在页面上进行日期格式化

2 UI标签库(方便数据回显)

能够数据回显是因为值栈

theme的默认值是xhtml(即用表格嵌套的html文件,比较整齐),将其改为simple,则与普通的表单无异

    <s:form action="" method="post" theme="xhtml">
        <s:textfield name="name" label="用户名"/><br/>
        <!-- showPassword="true"密码回显 -->
        <s:password name="password" label="密码" showPassword="true"/><br/>
        <s:radio list="{'男','女'}" name="sex" label="性别"/><br/>
        <s:select list="{'北京','上海','广州','深圳'}" name="city" label="籍贯" headerKey="" headerValue="--请选择--"/><br/>
        <s:checkboxlist list="#{'basketball':'篮球', 'football':'足球', 'volleyball':'排球', 'baseball':'棒球'}" name="hobby" label="爱好"/><br/>
        <s:textarea name="info" cols="8" rows="2" label="介绍" value="我是xxx"/><br/>
        <s:submit value="提交"/>
    </s:form>

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值