zoukankan      html  css  js  c++  java
  • struts 2 标签整理

     

    a标签创建一个HTML超链接,等价于HTML 的<a  href=""....

    示范代码:

    <s:a href="login.action">登陆</s:a>

    更多 a 信息

     action 
     

    使用action标签 可以允许在JSP页面中直接调用Action。

    范例如下:

    <s: action   name="tag2"  executeResult="false" />

    更多 action 信息

     actionerror 
     

    这个标签负责输出错误信息到客户端。
    示范代码:

    Action代码如下:
    public String execute()
    {
       addActionError("第一条错误消息!"); 
       addActionError("第二条错误消息!"); 

       return SUCCESS;
    }....
    JSP中:<s:actionerror/>

    更多 actionerror 信息

     actionmessage 
     

    这个标签负责输出提示信息到客户端,例子如下:

    Action代码如下:
    public String execute()
    {
       addActionMessage("第一条普通消息!"); 
       addActionMessage("第二条普通消息!"); 
       return SUCCESS;
    }
    JSP:<s:actionmessage />

    更多 actionmessage 信息

     append 
     

    用来做iterator标签的辅助,将不同iterator中的内容合在一个iterator中。
    例子:
    <s:append id="myAppendIterator">
         <s:param value="%{myList1}" />
         <s:param value="%{myList2}" />
         <s:param value="%{myList3}" />
    </s:append>
    <s:iterator value="%{#myAppendIterator}">
         <s:property />
    </s:iterator>

    更多 append 信息

     bean 
     

    bean标签 用于创建一个JavaBean的实例。

    示范样例:

    <s:bean   name="lee.Person"  id=“p”>
    <!--使用Param标签为lee。Person类的实例传入参数-->
    <s:param   name="name"  value="'yeeku'"/>
    <s:param   name="age"   value="29"/>
    </s:bean>

    更多 bean 信息

     checkbox 
     

    checkbox标签输出一个HTML复选框,等价于HTML代码:<input type="checkbox" .../>。

    示范代码:

    <s:checkbox label="性别" name="user.sex" value="true" fieldValue="dddd"/> 

    更多 checkbox 信息

     checkboxlist 

    标签输出一个复选框。

    示范代码:
    <s:form>
        <s:checkboxlist name="interest" list="{'足球','篮球','排球','游泳'}" label="兴趣爱好"/>
    </s:form>

    更多 checkboxlist 信息

     combobox 
     

    combobox标签生成一个单行文本框和下拉列表框的结合。

    示范代码:
    <s:combobox label="请选择您喜欢的图书" theme="css_xhtml" labelposition="top"
            list="{'Spring2.0' , 'J2EE' , 'Ajax'}"
            size="20" maxlength="20" name="book"/>

    更多 combobox 信息

     conponent 
     

    conponent标签用于使用自定义标签。因为使用自定义组件还是基于主题,模板管理的,因此在使用component标签,常常需要指定如下3个属性:
    theme:自定义组件所使用的主题,默认使用xhtml主题。
    templateDir:指定自定义组件的主题目录,默认使用系统的主题目录,即template目录。
    template:指定自定义组件所使用的模板。

    示范代码:
    <s:component template="mytemplate.jsp">
    <s:param name="list" value="{'Spring2.0' , 'J2EE' , 'Ajax'}" />
    </s:component>

    更多 conponent 信息

     date 
     

    date标签 用于格式化输入一个日期,还可以计算指定日期和当前时刻之间的时差。
    示范代码:

    <s:date  name="#attr.now"   format="dd/MM/yyyy"  nice=“true”/>

    更多 date 信息

     datetimepicker 
     

    datetimepicker标签就是生成一个有日期控件的文本输入框。它有一个前提就是要在<head></head>内加一个"<s:head theme="ajax" />",然后可以在form内加上该标签。 

    示范代码:

    <s:datetimepicker name="user.birthday" label="出生日期" value="%{'2008-9-20'}"/>

    更多 datetimepicker 信息

     debug 
     

    debug标签主要用于辅助测试,它在页面上生成一个超链接,通过该链接可以查看ValueStack和Stack Context 中的所有值信息。

    使用debug标签只有一个id属性,这个属性仅仅是该元素一个引用id。

    在页面上增加<s:debug/>标签,通过debug标签,可以看的系统中ValueStack离得全部信息,并可以看到Stack Context中的属性。

    <s:debug></s:debug>
    //直接在jsp页面上面添加这样的标签,就可以生产一个查看debug信息的链接

    更多 debug 信息

    示范代码:

     div 
     

    div是struts2 ajax中最基础的标签,其他的标签均和div有关系。div的最大的用途就是可以异步的更新div中的内容。这里写一些div基本的应用,其他的等写别的标签的时候再写。
    示范代码:
    <s:div href="%{url}">Initial Content</sx:div> 
    <!--最简单的例子,从指定的url获取信息更新自己的内容-->

    更多 div 信息

     doubleselect 
     

    doubleselect标签输出关联的两个HTML列表框,产生联动效果。
    <s:doubleselect
            label="请选择所在省市" name="province" list="provinces" listKey="id"
            listValue="name" doubleList="cities"
            doubleListKey="id" doubleListValue="name"
            doubleName="city" headerKey="-1"
            headerValue="--- 请选择 ---"
            emptyOption="true" />

    更多 doubleselect 信息

     else 
     

    else标签用来控制基本的条件处理流程,通常和if、elseif标签连用。

    例子
    <s:if test="%{false}">
        <div>Will Not Be Executed</div>
    </s:if>
    <s:elseif test="%{true}">
        <div>Will Be Executed</div>
    </s:elseif>
    <s:else>
        <div>Will Not Be Executed</div>
    </s:else> 

    更多 else 信息

     elseif 
     

    elseif标签用来控制基本的条件处理流程,通常和if标签连用。

    例子

    <s:if test="%{false}">

    ...</s:if>

    <s:elseif test="%{true}">

        <div>Will Be Executed</div>

    </s:elseif>

    <s:else>

    ...</s:else>

    更多 elseif 信息

     fielderror 
     

    fielderror标签输出action的fieldErrors属性保存的字段错误,fieldErrors是一个map类型的属性。

    示范代码:

    <s:fielderror/>

    更多 fielderror 信息

     file 
     

    file标签输出一个HTML文件选择框,等价于html代码:<input type="file" .../>。

    示范代码:
    <s:file name="uploadfile" accept="text/*" />
    <s:file name="uploadfile" accept="text/html,text/plain" />

    更多 file 信息

     form 
     

    form标签输出一个HTML from

    例子:

    <s:form action="exampleSubmit" method="post" enctype="multipart/form-data"> 
    <s:submit   /> 
         <s:reset   /> 
    </s:form>

    可以上传文件的form。 

    更多 form 信息

     generator 
     

    使用generator标签可以将指定字符串按指定分隔符分成多个子串,临时生成的多个子串可以使用iterator标签来迭代输出。可以这样理解:generator将一个字符串转化成一个集合。在该标签的标签体内,整个临时生成的集合将位于ValueStack的顶端,蛋一旦该标签结束,该集合将被移出ValueStack。

    更多 generator 信息

     head 
     

    head标签主要用于成生HTML主要页面的HEAD部分。国为有些主题需要包含特定的CSS和javascript代码,而该标签则用于生成对这此CSS和javaScript代码的引用。

    示范代码:

    <head>
    <title>page 1</title>
    <s:head/>
    </head>

    更多 head 信息

     hidden 
     

    hidden标签输出一个HTML隐藏表单元素,等价于HTML代码:<input type="hidden" .../>。

    在xhtml主题下,hidden标签与其他的标签不一样,hidden标签并不输出表行。xhtml主题直接从simple主题继承了

    hidden.ftl模板。

    示范代码:

    <s:hidden name="id" value="s"/>

    更多 hidden 信息

     i18n 
     

    该标签用于加载资源包到值堆栈。它可以允许text标志访问任何资源包的信息,而不只当前action相关联的资源包。

    示范代码:

    <s:i18n name="ApplicationMessages"> 
         <s:text name="HelloWorld" /> 
    </s:i18n> 

    更多 i18n 信息

     if 
     

    If标签用来控制基本的条件处理流程,通常和else标签或者elseif标签连用。

    例子:

    <s:if test="%{false}">

        <div>Will Not Be Executed</div>

    </s:if>

    更多 if 信息

     include 
     

    include标签 用于将一个JSP页面,或者一个Servlet包含到本页面中。

    示范代码:

    <h2>使用s:include标签来包含目标页面</h2>

    <s:include   value="include-file.jsp"/>

    <!--使用include标签来包含其他页面,并且传入参数-->

    <s:include   value="include-file.jsp">

        <s:param  name="author"  value="'yeeku'" />

    </s:include>

    更多 include 信息

     inputtransferselect 
     

    获取form的一个输入

    更多 inputtransferselect 信息

     iterator 
     

    迭代处理一个java.util.Connection或者java.util.Iterator对象

    例子:

    <s:iterator value="users" status="userStatus">
     <s:property value="fullName" />
     <s:if test="!#userStatus.last">,</s:if>
    </s:iterator>

     

    更多 iterator 信息

     label 
     

    xhtml主题下的label 标签输出两个 HTML的label标签(simple主题下的label标签只输出一个HTML label标签)。分别位于一行的两列,左列的label标签器提示作用,右列的label标签用于显示只读的action属性数据。

    示范代码:

    <s:label label="用户名" name="user.username"/>

    更多 label 信息

     merge 
     

    合并遍历集合出来的值,与<s:append>标签用法相似。

    例子:

    <s:merge id="list">
        <s:param value="#request.list1"/>
        <s:param value="#request.list2"/>
        <s:param value="#request.list3"/>
        <s:param value="#request.list4"/>
       </s:merge>
       <s:iterator value="%{list}">
            <s:property/><br> 
       </s:iterator>

    更多 merge 信息

     optgroup 
     

    optgroup标签用于生成一个下拉列表框的选项组,因此,该标签必须放在<s:select>标签中使用,一个下拉列表框中可以包含多个选项组,因此可以在一个<s:select>标签中使用多个<s:optgroup>标签。

    <s:select label="选择您喜欢的图书" name="book" list="#{'Spring2.0':'李刚','J2EE':'李','Ajax宝典':'李'}"
         listKey="value"  listValue="key">
       <s:optgroup label="Rod Johnson"
               list="#{'Expert One-on-One J2EE Design and Development':'Johnson'}"
         listKey="value"
         listValue="key"/>
       <s:optgroup label="David Flanagan"
               list="#{'JavaScript: The Definitive Guide':'David'}"
         listKey="value"
         listValue="key"/>
    </s:select>

    更多 optgroup 信息

     optiontransferselect 
     

    optiontransferselect标签创建一个选项转移列表组建,它由两个<select>标签以及它们之间的用于将选项在两个<select>之间相互移动的按钮组成。表单提交时,将提交两个列表框中选中的选项。
    示范代码:
    <s:optiontransferselect
        label="最喜爱的图书"
            name="javaBook"
            list="{'《Java Web开发详解》', '《Struts 2深入详解》', '《Java快速入门》'}"
            doubleName="cBook"
            doubleList="{'《VC++深入详解》', '《C++ Primer》', '《C++程序设计语言》'}"/>

    更多 optiontransferselect 信息

     param 
     

    param标签 主要用于为其他标签提供参数

    用法:
    <param  name="color"  value="blue" />
    这里color参数的值是,blue对象的值----如果blue对象不存在,则color为null。

    更多 param 信息

     password 
     

    <s:password>标签类同于HTML的<input type=”password” …>,其name和label类同于<s:textfield>

    例子:

    <s:password name="password" label="密码"/> 

    更多 password 信息

     property  
     

    property标签用于输出值栈中的对象的属性值,使用value属性来指定要输出的对象属性,如果没有指定value属性,那么默认输出栈顶对象。

    例子:

    <s:property value="username" default="游客"/>

    取出栈顶对象(通常是action)的username 属性并输出,如果没有找到username属性,那么输出“游客”。

    更多 property  信息

     push 
     

    push标签用于将某个值放到ValueStack的栈顶,可以跟简单的访问该值。
    示范样例:
    <s:bean  name="lee.Person"  id="p">
       <s:param   name="age"  value="29"/>
    </s:bean>
    <s:push   value="#p">
        <s:property   value="name"/>
        <s:propery   value="age"/>
    </s:push>

    更多 push 信息

     radio  
     

    radio标签的用法与checkboxlist的用法几乎完全相同,一样可以指定label, list, listKey, listValue等属性。

    示范代码:
    <s:radio name="c" label="请选择您喜欢的图书" labelposition="top"
    list="#bs.books"
    listKey="author"
    listValue="name"/>

    更多 radio  信息

     reset 
     

    reset标签输出一个重置按钮。

    示范代码:
    <s:reset value="重置"></s:reset>

    <s:reset type="button" label="重置"></s:reset>

    更多 reset 信息

     select 
     

    s:select 标签输出一个下拉列表框,相当于HTML代码中的<select/>

    示范代码:
    <s:form>
        <s:select label="最高学历" name="education" list="{'高中','大学','硕士','博士'}"/>
    </s:form>

    更多 select 信息

     set 
     

    set标签是将某个值放到指定范围内, 比如说 student.teacher.parent.age 每次访问这个属性不仅性能低,而且代码可读性很差,为了解决这个问题,可以将这个值设置为一个新值,并且放入指定范围内。
    使用示范:
    <s:set value="#p" name="test"/> 
    <s:property value="#test.name"/> <br> 
    <s:property value="#test.age"/> <br>

     sort 
     

    对一个可以迭代的对象进行排序操作。

    <s:sort comparator="myComparator" source="myList">
         <s:iterator>
         <!-- do something with each sorted elements -->
         <s:property value="..." />
         </s:iterator>
    </s:sort>

    更多 sort 信息

     submit 
     

    Submit标签输出一个按钮,submit标签和form标签使用可以提供异步表单提交功能。Submit标签可以输出以下三种类型的提交按钮:
    Input 等价于 HTML代码<input type=submit>
    Image 等价于 HTML代码 <input type="image">
    Button<button type="submit"></button>

    示范代码
    <s:submit value="登陆"></s:submit>

    更多 submit 信息

     subset 
     

    递归iterator的一部分。
    例子:

    <s:subset source="myList">

          <s:iterator>

             <s:property />

          </s:iterator>

    </s:subset>

    更多 subset 信息

     tabbedPanel 
     

    <s:tabbedPanel>标签,用来在HTML页面中生成类似于Windows程序的Tab页,从而可以在有限的空间中放置更多的内容。tabbedPanel标签生成的Tab页的内容可以是静态的,也可以是动态的。
    示范代码:
    <s:tabbedPanel id="tp1" closeButton="pane" theme="ajax" doLayout="true" selectedTab="second"     labelposition="left">
          <s:div id="first" label="第一个div" theme="ajax">
           静态的DIV
          </s:div>
          <s:div name="second" label="第二个div" theme="ajax" href="%{T}" updateFreq="6000" delay="3000">
           3:每六秒钟刷新一次,但有三秒延迟
          </s:div>
    </s:tabbedPanel>

    更多 tabbedPanel 信息

     text 
     

    用于输出国际化消息,和i18n结合使用。

    示范代码:

    <s:i18n name="ApplicationMessages"> 
         <s:text name="HelloWorld" /> 
    </s:i18n> 

    更多 text 信息

     textarea 
     

    Textarea标签输出一个HTML多行文本输入控件,等价于HTML代码:<textarea />

    示范代码:
    <s:textarea name="personal" cols="10" rows="5" label="个人简历"></s:textarea>

    更多 textarea 信息

     textfield 
     

    Textfield标签输出一个HTML单行文本输入控件,等价于HTML代码<input type="text">


    示范代码:

    <s:form action="register" method="post">
        <s:textfield name="username" label="用户名"></s:textfield>
    </s:form>

     

    更多 textfield 信息

     token 
     

    token标签是用于防止多次提交的标签。避免了刷新页面时多次提交,如果需要该标签起作用,则应该在Struts2的配置文件中启用TokenInterceptor拦截器或TokenSessionStoreInterceptor拦截器。

    示范代码:
    <s:form>
    <s:token/>
    </s:form>

    更多 token 信息

     tree 
     

    tree和treenode标签可以在页面生成一个树形结构,其中tree生成一个树形结构,treenode生成一个树节点。
    示范代码:

    <s:tree label="图书" id="book" theme="ajax" 
    showRootGrid="true" showGrid="true" treeSelectedTopic="treeSelected">
        <s:treenode theme="ajax" label="David" id="David">
         <s:treenode theme="ajax" label="JavaScript: The Definitive Guide" id="javascript"/>
        </s:treenode>
    </s:tree>

    更多 tree 信息

     treenode 
     

    tree和treenode标签可以在页面生成一个树形结构,其中tree生成一个树形结构,treenode生成一个树节点。
    示范代码:

    <s:tree label="图书" id="book" theme="ajax" 
    showRootGrid="true" showGrid="true" treeSelectedTopic="treeSelected">
        <s:treenode theme="ajax" label="David" id="David">
         <s:treenode theme="ajax" label="JavaScript: The Definitive Guide" id="javascript"/>
        </s:treenode>
    </s:tree>

    更多 treenode 信息

     updownselect 
     

    updownselect标签创建一个带有上下移动的按钮的列表框,可以通过上下移动按钮来调整列表框的选项的位置。
    示范代码:
    <s:updownselect name="a" label="请选择您喜欢的图书" labelposition="top"
        moveUpLabel="向上移动"
        list="{'Spring2.0宝典' , '轻量级J2EE企业应用实战' , 'JavaScript: The Definitive Guide'}"/>

    更多 updownselect 信息

     url 
     

    url标签 用于生成一个URL地址,可以通过param向url标签指定参数,从而指定URL发送请求参数。

    示范代码:

    指定action属性,且使用param传入参数的形式
    <s:url  action="showbook">
    <s:param  name="author"  value="'yeeku'">
    </s:url>

    更多 url 信息

  • 相关阅读:
    抽取一个简单的按钮方法
    一些iOS笔试题目
    使用第三方框架 Masonry 实现自动布局
    AutoLayout适配
    iOS面试小题集锦
    大牛们的技术博客
    5、过滤流
    3、过滤文件夹
    1、File类简介
    贪婪模式和非贪婪模式
  • 原文地址:https://www.cnblogs.com/huozhicheng/p/2533166.html
Copyright © 2011-2022 走看看