Struts 2.1 Tags

阅读更多
转自:http://www.iteye.com/topic/655025

Struts 2.1 Tags
   

   

    一、控制标签


   
     #、if /elseif/ else @用于逻辑判断

    
    
     你是何方妖怪?
    

    
     未成年人不能进入!
    

    
     您已经成年!
    

    
     您已经老了!
    

    
--------------------------------------------------------------

#、append @用于将多个集合合并








|

 
--------------------------------------------------------------

#、generator 

generator标签,该标签可以将指定字符串按指定分隔符分割成多个字串。生成的多个字串可以用iterator标签进行迭代输出。可以这么理解:generator标签将一个字符串转换成一个List集合。在该标签体内,整个临时生成的集合将为Valuestack的顶端,但一旦该标签结束,生成的集合将被移除Valuestack。generator标签有如下几个属性:


1、count属性:指定生成集合中元素的总数。可选属性。


2、val属性:必填属性,指定被解析的字符串。


3、separator属性:这是一个必填属性,指定用于分割字符串的分隔符。


4、converter属性:可选属性,指定一个转换器,转换器负责将生成的集合中的每个字符串转换成对象,通过这个转换器可以将一个含有分隔符的字符串解析成对象的集合。转换器必须一个继承org.apache.struts2.util.IteratorGenerator.Converter的对象。


5、var属性,可选属性。如果指定了该属性,则将生成的集合保存在Stack Context中。如果不指定该属性,则将生成的集合放入ValueStack的顶端,该标签一结束,生成的集合就被移除。该属性也可替换成id。









 
--------------------------------------------------------------

#、iterator 用于迭代数据



  
                  
                  
                  
                  
                  
                  
                  
              


pink">









   索引      值      奇?      偶?       首?       尾?      当前迭代数量   



 
--------------------------------------------------------------

#、merge @和类似:用于将多个集合合并








|

 
--------------------------------------------------------------

#、sort @用于排序




,


 
--------------------------------------------------------------

#、subset @用户截取集合中的子集;   注:decider:可选属性,指定由开发者自己决定是否选中该元素. 





,


 
--------------------------------------------------------------

       二、数据标签

     

#、action @用于导入一个Action

使用action标签,可以允许在jsp页面中直接调用Action,在调用Action时候,可以指定需要被调用的Action的name和namespace.如果指定了executeResult参数的属性值为true,该标签会把Action的处理结果(视图资源)包含到本页面中. 使用action标签指定属性有:


id: 可选属性,作为该Action的引用ID  

  
name:必选属性,指定调用Action   

  
namespace:可选属性,指定该标签调用Action所属namespace   

  
executeResult:可选属性,指定是否将Action的处理结果包含到本页面中.默认值为false,不包含.   

  
ignoreContextParam:可选参数,指定该页面的请求参数是否需要传入调用的Action中,默认值是false,即传入参数.


s:param是以request方式的值的,而不是以参数传值,所以request.getParameter("")会获取不到值,通过request.getAttribute("")方式可以获取






 
--------------------------------------------------------------

#、bean @用于导入一个javaBean,相当于:jsp:useBean 标签





userId:

userName:
 
--------------------------------------------------------------

#、date @用于格式化日期


当期系统时间是:
 
--------------------------------------------------------------

#、debug @用于调试程序,让开发人员一目了然的知道当前请求、值栈、栈中的各项参数


 
--------------------------------------------------------------

#、i18n @用于访问国际化资源文件的内容

1.默认访问全局范围内的资源文件;



三毛
学习




2.访问包范围内的资源文件;




三毛
学习




3.访问Action范围内的资源文件;




三毛
学习


 
--------------------------------------------------------------

#、include @用于导入一个jsp文件,等同于:jsp:include标签


 
--------------------------------------------------------------

#、param @用于给指定参数设置值





userId:

userName:
 
--------------------------------------------------------------

#、property @输出结果,很像EL表达式,但是可以依托于OGNL表带是很强大

同上
 
--------------------------------------------------------------

#、push @该标签可以把程序员在ActionContext中引用的对像压入valuestack中,为以后访问对象提供了方便


 
--------------------------------------------------------------

#、set @用户声明对象或属性


,你好啊!
 
--------------------------------------------------------------

#、text @用户获取国际化资源文件的内容

请参考 il8n标签
 
--------------------------------------------------------------

#、url @用于组拼一个请求路径








注意:
  
          
        value以字符处理:  
  
        value明确指定以ognl表达式处理:      

 
--------------------------------------------------------------

   
       三、UI标签

   

   
    #、checkboxlist @复选框列表

   1> .list 生成;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  
        name:checkboxlist的名字
  
        list:checkboxlist要显示的列表
  
        value:checkboxlist默认被选中的选项,checked=checked
  
          
       
  
      
        2> .Map 生成;~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
  
        name:checkboxlist的名字
  
        list:checkboxlist要显示的列表
  
        listKey:checkbox 的value的值
  
        listValue:checkbox 的lablel(显示的值)
  
        value:checkboxlist默认被选中的选项,checked=checked
  
          
 
        
--------------------------------------------------------------

     #、combobox

   

--------------------------------------------------------------

     #、radio @单选框

    <%  
            Sex sex1 = new Sex(1,"男");   
            Sex sex2 = new Sex(2,"女");  
            List list = new ArrayList();   
            list.add(sex1);  
            list.add(sex2);  
            request.setAttribute("sexs",list);   
        %>  
                      这个与checkboxlist差不多;
  
        1>.如果集合为javabean:
  
        2>.如果集合为list:
  
        3>.如果集合为map:
  
       
  
    
--------------------------------------------------------------

     #、select @下拉列表框
 
     这个与s:checkboxlist差不多;
  
        1>.如果集合为javabean:
  
        2>.如果集合为list:
  
        3>.如果集合为map:
  
    
    
--------------------------------------------------------------

     #、doubleselect @级联菜单

   
    
    
    
    
    
--------------------------------------------------------------

     #、optiontransferselect

    
    
--------------------------------------------------------------

     #、updownselect @可上下选择的select

    
 
--------------------------------------------------------------

#、sx:datetimepicker @日期选择控件

使用步骤:声明:我这里用的是strut 2.1.8.1,在struts2.0的版本中可能有所不同;

  1.导入struts2-dojo-plugin-2.1.8.1.jar DoJo 插件包;

  2. 导入标签:<%--@ taglib prefix="sx" uri="/struts-dojo-tags"--%>;

  3.在需要使用的页面中的head标签之间加上<%-- --%>;


 
--------------------------------------------------------------

     #、sx:tabbedpanel @选项卡控件

     声明:这个标签代码转至:http://blog.sina.com.cn/s/blog_6145ed810100ecud.html,版权归作者所有;写的挺好拿来大家共同学习。
    
     

 

  最简单的选项卡:
 

       
    
         Local Tab 1
    
 
    
         Local Tab 2
    
 
       




 

  加载其他页面的选项卡:
 

 
 
             Remote Tab 1
       

    
             Remote Tab 1
       

 




 

  设置选项卡底下的内容懒加载,即等需要的时候再加载,使用属性preload="false":
 

       
    
         Remote Tab 1
    

    
         Remote Tab 1
    
    
       




 

  固定大小的选项卡,使用属性cssStyle和doLayout:
 

       
    
         Local Tab 1
    
 
    
         Local Tab 2
    
 
       




 

  每次点击选项卡时都重新刷新内容,使用属性refreshOnShow:
 

 
    
         Remote Tab 1
    

    
         Remote Tab 2
    
    
 





 

  使得其中一个选项卡失效:
 

        
   
        Local Tab 1
   
 
   
        Local Tab 2
   
 
       




 

  设置选项卡在底部显示 (可以是: top, right, bottom, left):
 

 
    
         Local Tab 1
    
 
    
         Local Tab 2
    
 
 



 

  设置选项卡允许关闭,使用属性closeable:
 
      
 
    
         Local Tab 1
    
 
    
         Local Tab 2
    
 
 



--------------------------------------------------------------

     #、sx:textarea @textarea控件

    
    
    
--------------------------------------------------------------

     #、sx:tree @树控件

    
  
  
      
      
  

  

    
  

你可能感兴趣的:(struts,java)