struts 2 常用标签

一、数据标签

1、property 标签:

得到‘Value’的属性,如果value没提供,默认为堆栈顶端的元素。

参数:
名称必需默认类型描述
defaultString如果属性是null则显示的default值
escapetrueBooelean是否escape HTML
value栈顶Object要显示的值
idObject/String用来标识元素的id。在UI和表单中为HTML的id属性
例子:
		  <s:property/><!-- 根对象的属性 -->
          <s:property value="num1"/>,<!-- 取根对象最上面的对象的属性 -->
          <s:property value="cal2.num1"/>, <!-- 取根对象的cal2对象的num1属性 -->
          <s:property value="#request.cal2.num1"/><!--取非根对象cal2的num1属性值  -->
2、set 标签:

set标签赋予变量一个特定范围内的值。当希望给一个变量赋一个复杂的表达式,每次访问该变量而不是复杂的表达式时用到。

参数:
名称必需默认类型描述
nameString变量名字
scopeString变量作用域,可以为application, session, request, page, 或action
valueObject/String将会赋给变量的值
idObject/String用来标识元素的id。在UI和表单中为HTML的id属性
例子:

在ognl上下文的根对象中取result值,赋值给test1

 <h3>set</h3>
          <s:set var="test1" value="result"></s:set>
          ${test1}.${requestScope.test1 }
3、push 标签:

push就是将你需要的值放到栈顶。便于页面获取 。
例如:

  <s:push value="result">
4、param 标签:

子标签 :两种赋值方式:ognl表达式,字符串-

注1:它是子标签
注2:url/action
参数:
名称必需默认类型描述
nameString参数名
valueStringvalue表达式
idObject/String用来标识元素的id。在UI和表单中为HTML的id属性
5、date标签:

获取时间的标签:

例子:
  <%
         request.setAttribute("currentDate",new Date());
  %>
 		<s:date name="#request.currentDate" format="yyyy-MM-dd"/>
 
6、debug 标签:

用来调试代码,看其中的属性,参数,栈顶等:
样式如下:
在这里插入图片描述

7、url :

没有发请求,只为了生成url链接地址

例子:
  <!-- 生成地址所用,注意与a标签区分 -->
          <s:url namespace="/sy" action="tagAction" var="test3"></s:url>
          <s:property value="#test3"/>
 <!-- a 标签 -->
          <a href=' <s:property value="#test3"/>'>xxx</a>
          <s:a href="%{#test3}">aaa</s:a>

在这里插入图片描述

8、action :

再发一次请求 是为了调后台模块代码,拿数据

例子:
  <s:action name="tagAction" namespace="/sy" var="test2"></s:action>
   <s:property value="#test2.cal2"/>

二:控制标签:

1、 iterator标签:

相当于以前学的foreach 标签,用于遍历集合:

参数:
名称必需默认类型描述
statusString如果设置此参数,一个IteratorStatus的实例将会压入每个遍历的堆栈
valueObject/String要遍历的可枚举的(iteratable)数据源,或者将放入新列表(List)的对象
idObject/String用来标识元素的id。在UI和表单中为HTML的id属性
例子:
<%
  request.setAttribute("names",new String[]{"gay","ls","ww"});    
%>

<ul>
          <s:iterator var="v" value="#request.names">
          	<li>
          		<s:property value="#v"/>
          	</li>
          </s:iterator>
		</ul>
结果:在这里插入图片描述
2、if/elseif/else 标签:

用来执行判断的:

参数:
名称必需默认类型描述备注
testBoolean决定标志里内容是否显示的表达式else标志没有这个参数
idObject/String用来标识元素的id。在UI和表单中为HTML的id属性
例子:
  <%
          request.setAttribute("score",new Integer(70));
   %>
	<s:if test="#request.score>80">
			A
		</s:if>
		<s:elseif test="#request.score>60">B</s:elseif>
		<s:else>C</s:else>
		结果:B

三、表单标签:

1、from:
例子:

action 访问后台数据

<s:form namespace="" action=""></s:form>
2、textfield: 文本框
例子:

name:属性名, label:文本框前的标题名

 	<s:textfield label="姓名" name="uname"></s:textfield>
3、radio :单选框

例子:

1、第一种方式:默认选中男
<s:radio list="{'男','女'}" label="性别" name="sex" value="'男'"></s:radio>


2、第二种方式:默认选中女
<s:radio list="#{1:'男',2:'女'}" label="性别" name="sex" value="2"></s:radio>

4、select 下拉框:
例子:
<s:select  label="部门选择" list="#{1:'人员部门',2:'公关部门',3:'文艺部门' }" name="deptname"></s:select>
5、checkbox 复选框,两种:
例子:
1、单选复选框,返回一个true/false
	<s:checkbox label="是否已婚" name="married"></s:checkbox>
	2、多选复选框,返回一个结果集。
          	<s:checkboxlist label="爱好" name="hobby" list="#{1:'吃饭',2:'睡觉',3:'看电视' }"></s:checkboxlist>
6、textarea 文本域:
例子:
  <s:textarea name="remark" label="个人简介"> </s:textarea>
7、hidden 隐藏域传值:
例子:
  <s:hidden name="hd_name" value="20"></s:hidden>
8、submit 提交:
例子:
	<s:submit value="提交"></s:submit>

然后这就是一个简单的form表单
在这里插入图片描述

四: 标签的公共属性:

var 将值保存到上下文(ActionContext)中的一个key

注意:

%{str}:str会被强制转换成OGNL表达式计算
以上最最重要的是通过debug标签去拿值

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值