struts2的标签介绍

版权声明:仅供学习 https://blog.csdn.net/qq_41304019/article/details/83990712

首先这个struts标签跟以前的c标签写法都差不多 不过有一些标签会有一些改动

 1.1 通用标签
  1.1.1 数据标签
          property
          set  
          push
          param
            <param name="color">blue</param>
            <param name="color" value="blue"/>
            注1:它是子标签   注2:url/action
          date 转时间
            java.text.SimpleDateFormat/DecimalFormat
          debug  查看后台request的一些请求
          url/param/a(重要~用来生成url链接的)

        action

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

    1.1.2 控制标签
          iterator/if/elseif/else

具体介绍都在代码里有测试
 

<h2>标签</h2>
<a href="${pageContext.request.contextPath}/sy/parAction.action?num1=12&num2=15&ss=hhh&cal2.num1=120">多点点</a> 那边写好简单测试类
 
 
 <h3 style="color: red;">数据标签</h3>
	 <h3>var里面设置的值没有放到值栈中所以都是非根对象 用#</h3>
          <h3>set</h3>
          <!-- 在ognl上下文的根对象中取value里的值 赋给var 就相当于一个名字 value放的是ognl表达式的值 那边action里存了值可以拿到-->
          <s:set var="text1" value="ss"></s:set>
          ${text1}
          <h3>property</h3>
          <!-- 打印输出值的 跟c:out标签相似 -->
          <!-- 取栈顶 model-->
          <s:property/>
          <!-- 取根对象最上面的属性 -->
          <s:property value="num1"/>
           <!-- 取根对象cal2里的属性 -->
          <s:property value="cal2.num1"/>
           <!-- 取非根对象cal2里的属性 -->
          <s:property value="#request.cal2.num1"/>
          <h3>push</h3>
          <!-- push就是把需要的值放到栈顶 便于页面获取 -->
          <s:property/>
          <s:push value="num1">
          <s:property/>
          </s:push>
          <!-- 意思就是先输出的是最上面num1的值 然后把text2那个值放到了上面 关闭后又是最上面的那个值 -->
          <s:property/>
          <h3>action</h3>
          <!-- 通常用来请求后台 初始化数据 -->
          <!-- 通过某一个action里拿到数据 -->
          <s:action name="parAction" namespace="/sy" var="text3"></s:action>
          <s:property value="#text3.cal"/>//拿到那个action里一些属性
          <h3>url</h3>
          <!-- url是为了生成地址所用 -->
          <s:url namespace="/sy" action="parAction" var="text4"></s:url>
          <s:property value="text4"/><!-- 打印出这个url加载调的这个地址 -->
          <a href="<s:property value="text4"/>">aaa</a>
          <!-- a标签直接放打印的这个 s的a标签要用%{#text4} -->
          <s:a href="%{#text4}">bbb</s:a>
          <h3>param</h3>
          <!-- 向这个url路径里后面传param值 比如res=aaa&text6=ss ss里是ognl里面的值 -->
          <s:url namespace="/sy" action="proAction" var="text5">
           <s:param name="res">123</s:param>
          <s:param name="text6" value="ss"></s:param>
          </s:url>
          <s:property value="text5"/>
          <h3>date</h3>
          <% //获取一些数据方便下面拿数据
          request.setAttribute("datas", new Date());
          request.setAttribute("data2", new Integer(28)); 
          request.setAttribute("data3", new String[]{"1","2","3"});
          %>
          <!-- 转换时间格式 -->
          <s:date name="#request.datas"/>
          <h3>debug</h3>
          <!-- 用来查看请求里面的数据的 -->
          <s:debug></s:debug>
          
   	 <h3 style="color: red;">控制标签</h3>
   	 
   	 	<h3>iterator/if/elseif/else</h3>
   	 	<!-- 相当于进行遍历 拿到v的每一个 -->
   	 	<ul>
   	 	<s:iterator value="#request.data3" var="v">
   	 	<li><s:property value="#v"/></li>
   	 	</s:iterator>
   	 	</ul>
          <s:if test="#request.data2>60">A</s:if>
          <s:elseif test="#request.data2==60">B</s:elseif>
          <s:else>C</s:else>

2.表单标签
表单标签就相当于一些form标签 form里面的输入框 复选框 文本框等等 好在一点就是这些标签直接替代了那些input 可以直接用你想要的。

 <h3 style="color: red;">表单标签</h3>
          <h3>form</h3> 用来装那些文本框等等
          <h3>textfield</h3>文本框
          <h3>radio</h3>单选
          <h3>select</h3>下拉框 好在一点这个标签已经直接把所有属性放在select里 不需要写option什么的 直接调里面的属性
          <h3>textarea</h3>文本域
          <h3>hidden</h3>隐藏域 藏一些隐藏属性过去
          <h3>submit</h3>提交

    <s:form action="" method="">
          <s:textfield name="uname" label="姓名"></s:textfield>
          <!-- 必须要给name 不然会找不到哪一个 -->
          <%-- <s:radio list="{'男','女'}" label="性别" name="sex" value="'男'"></s:radio> --%>     
              <s:radio list="#{1:'男',2:'女'}" label="性别" name="sex" value="2"></s:radio> 
         <!-- 单选复选框 返回true或false -->
          <s:checkbox name="aa" label="确定"></s:checkbox>
          <s:checkboxlist list="#{1:'唱歌',2:'跳舞'}" name="hobby"></s:checkboxlist>
          <s:select headerKey="1" headerValue="请选中" name="xiala" list="#{1:'aaa',2:'bbb',3:'ccc'}" label="学生列表"></s:select>
         <s:hidden name="menuid" id="aa" value="menuid"></s:hidden>
         <s:textarea name="text" label="文本域" ></s:textarea>
         <s:submit action=""></s:submit>
          </s:form>


基本上就这么些常用的

猜你喜欢

转载自blog.csdn.net/qq_41304019/article/details/83990712