Chinaunix首页 | 论坛 | 博客
  • 博客访问: 403590
  • 博文数量: 79
  • 博客积分: 4010
  • 博客等级: 上校
  • 技术积分: 897
  • 用 户 组: 普通用户
  • 注册时间: 2007-04-10 23:22
文章分类

全部博文(79)

文章存档

2011年(1)

2010年(6)

2009年(39)

2008年(33)

我的朋友

分类: Java

2009-11-08 15:46:19

一、
写jsp页面的时候,在struts2中,用的是s标记,先引入标记:
<%@ taglib prefix="s" uri="/struts-tags"%>
二、
struts2的标签和1是完全不同的。
struts2的标签分为两大类:非UI标志和UI标志 struts1 将标志库按功能分成HTML、Tiles、Logic和Bean等几部分
下面就介绍strut2的具体标签:
1、UI
UI 标志又可以分为表单UI和非表单UI两部分。表单UI部分基本与Struts 1.x相同,都是对HTML表单元素的包装。不过,Struts 2.0加了几个我们经常在项目中用到的控件如:datepicker、doubleselect、timepicker、 optiontransferselect等。因为这些标志很多都经常用到,而且参数也很多,要在一篇文章详细说明并非易事。
下面主要是ui标签的一些用法
form:


    

可以上传文件的form。
textfield:
             label="姓名:"
             name="name"
             tooltip="Enter your Name here" />
datepicker:
             tooltip="Select Your Birthday"
             label="生日"
             name="birthday" />
textarea:
             tooltip="Enter your remart"
             label="备注"
             name="remart"
             cols="20"
             rows="3"/>
select:
             tooltip="Choose user_type"
             label=""
             list="#{'free':'免费','vip':'收费'}" value="#{'free':'免费'}"  
           name="bean.user_type"
             emptyOption="true"
             headerKey="None"
             headerValue="None"/>
             tooltip="Choose user_type"
             label=""
             list="#{'free':'免费','vip':'收费'}" value="#{'free':'免费'}"  
           name="bean.user_type"
             emptyOption="true"
             headerKey="None"
             headerValue="None"/>
list="venderList"
listKey="id"
listValue="name"
value="%{profile.companyName}"
name="companyName" cssClass="sel_style_w_180"/>  
挺好用的
checkboxlist:
             tooltip="Choose your Friends"
             label="朋友"
             list="{'Patrick', 'Jason', 'Jay', 'Toby', 'Rene'}"
             name="friends"/>
checkbox:
                tooltip="Confirmed that your are Over 18"
             label="年龄"
             name="legalAge"
            value="18"/>
file:
                tooltip="Upload Your Picture"
             label="Picture"
             name="picture" />
a:
超链接提交
date :

2、非UI
if、elseif和else 描述:
执行基本的条件流转。
参数:
名称必需默认类型描述备注test是Boolean决定标志里内容是否显示的表达式,else标志没有这个参数id是Object/String用来标识元素的id。在UI和表单中为HTML的id属性 例子:
<%@ page c %>
<%@ taglib prefix="s" uri="/struts-tags" %>


    
         Condition Flow
    
    
        

Condition Flow

            
        
    
  
    
         
    
    
    
    
                   文字
                

                
                   图片
                

                
                 -----
              
   
    

   
    

例1 condition.jsp
iterator 描述:
用于遍历集合(java.util.Collection)或枚举值(java.util.Iterator)。
参数:
名称必需默认类型描述status是String如果设置此参数,一个IteratorStatus的实例将会压入每个遍历的堆栈value是 Object/String要遍历的可枚举的(iteratable)数据源,或者将放入新列表(List)的对象id是Object/String用来标识元素的id。在UI和表单中为HTML的id属性 例子:
<%@ page c %>
<%@ page import="java.util.List" %>
<%@ page import="java.util.ArrayList" %>
<%@ taglib prefix="s" uri="/struts-tags" %>


<%
     List list = new ArrayList();
     list.add("Max");
     list.add("Scott");
     list.add("Jeffry");
     list.add("Joe");
     list.add("Kelvin");
     request.setAttribute("names", list);
%>

    
         Iterator
    
    
        

Names:


        
        

                 status="stuts" id="name">
                    
                    
                        
  1. White

  2.                 

                    
                        

  3.                 

                
            

    


例2 iterator.jsp
i18n 描述:
加载资源包到值堆栈。它可以允许text标志访问任何资源包的信息,而不只当前action相关联的资源包。
参数:
名称必需默认类型描述value是Object/String资源包的类路径(如com.xxxx.resources.AppMsg)id是Object/String用来标识元素的id。在UI和表单中为HTML的id属性 例子:
HelloWorld=Hello Wrold!
例3 classes\ ApplicationMessages.properties

<%@ page c %>
<%@ taglib prefix="s" uri="/struts-tags" %>



    
         Internationization
    
    
        


            
                
            

        


    

例3 i18n.jsp
include 描述:
包含一个servlet的输出(servlet或jsp的页面)。
参数:
名称必需默认类型描述value是String要包含的jsp或servletid是Object/String用来标识元素的id。在UI和表单中为HTML的id属性 例子:
<%@ page c %>
<%@ taglib prefix="s" uri="/struts-tags" %>



    
         Iterator
    
    
        

Interator Page


        
             Max
        

        

i18n


        
    

例4 include.jsp
param 描述:
为其他标签提供参数,比如include标签和bean标签. 参数的name属性是可选的,如果提供,会调用Component的方法addParameter(String, Object), 如果不提供,则外层嵌套标签必须实现UnnamedParametric接口(如TextTag)。

value的提供有两种方式,通过value属性或者标签中间的text,不同之处我们看一下例子:
blue

(A)参数值会以String的格式放入statck.
(B)该值会以java.lang.Object的格式放入statck.
参数:
名称必需默认类型描述name是String参数名value是Stringvalue表达式id是Object/String用来标识元素的id。在UI和表单中为HTML的id属性 例子:
请参考例4。
set 描述:
set标签赋予变量一个特定范围内的值。当希望给一个变量赋一个复杂的表达式,每次访问该变量而不是复杂的表达式时用到。其在两种情况下非常有用: 复杂的表达式很耗时 (性能提升) 或者很难理解 (代码可读性提高)。
参数:
名称必需默认类型描述name是String变量名字scope是String变量作用域,可以为application, session, request, page, 或action.value是Object/String将会赋给变量的值id是Object/String用来标识元素的id。在UI和表单中为 HTML的id属性 例子:
请参考例1。
text 描述:
支持国际化信息的标签。国际化信息必须放在一个和当前 action同名的resource bundle中,如果没有找到相应message,tag body将被当作默认message,如果没有tag body,message的name会被作为默认message。
参数:
名称必需默认类型描述name是String资源属性的名字id是Object/String用来标识元素的id。在UI和表单中为HTML的id属性 例子:
请参考例3。
url 描述:
该标签用于创建url,可以通过"param"标签提供request参数。

当includeParams的值时'all'或者'get', param标签中定义的参数将有优先权,也就是说其会覆盖其他同名参数的值。 参数: 略
例子:
<%@ page c %>
<%@ taglib prefix="s" uri="/struts-tags" %>


    
         URL
    
    
        

URL

            
         i18n

        
             Max
        
        
         if\elseif\else
    

例5 url.jsp
property 描述:
得到'value'的属性,如果value没提供,默认为堆栈顶端的元素。
参数:
名称必需默认类型描述default是String如果属性是null则显示的default值escape是trueBooelean是否escape HTMLvalue是栈顶Object要显示的值id是Object/String用来标识元素的id。在UI和表单中为HTML的id属性 例子:
请参考例2。
阅读(3634) | 评论(1) | 转发(0) |
给主人留下些什么吧!~~

chinaunix网友2010-07-16 18:48:18

KK娱乐视频网,快乐齐分享 www.yulekk.com 搞笑视频,动漫视频,美女写真,靓丽车模,美女翻唱,精彩MV,经典DV