Struts快速学习指南15(内部培训教材)-大部分素材来自于《Programming Jakarta Struts》一书

类别:Java 点击:0 评论:0 推荐:
1.1.1           form标签

Struts的form标签是最重要的标签之一,他包装了HTML的标准form标签,提供了将HTML form和ActionForm 连接起来的功能。

HTML form中的每一个域对应ActionForm的一个属性,当提交HTML from后,Struts根据匹配关系,将HTML from域的值赋给ActionForm的同名属性。下表列举了form标签的属性,并且针对每一个属性加以详细说明:

Struts form标签属性列表

Name

Description

action

form提交的目标地址,action用来选择一个Struts Action对提交后的客户请求进行处理。通过和action的path属性进行匹配来选择Struts Action。

如果在web.xml中设置的servlet映射是扩展名映射,则可以用以下方式进行Action匹配(扩展名可以不作为匹配内容):

<html:form action="login.do" focus="accessNumber">

上面的语句表示form提交后,交给path属性值为login的Action进行处理

如果在web.xml中设置的servlet映射是路径映射,则action的值必须完全匹配Struts Action的path属性值,例如:

<html:form action="login" focus="accessNumber">

enctype

提交form使用的编码方式

focus

页面初始化时光标定位的输入控件名

method

提交请求的HTTP方式(‘POST’ or ‘GET’)

name

对应的ActionForm的名字 ,如果不指定,则使用Struts Action在配置文件中name属性所指定的ActionForm。

onreset

当form重置时执行的Javascript

onsubmit

当form提交时执行的javascript

scope

与form对应的ActionForm的有效区域,可以为request 或session

style

CSS样式表The CSS styles to be applied to this HTML element.

styleClass

CSS样式类别

styleId

HTML元素的ID

target

form提交的目标frame

type

form对应的ActionForm的类名

 

1.2  Struts Logic标签库 Struts Logic标签库中包含的标签列表

Tag name

Description

empty

如果标签parameter,propertie等属性所指定的变量值为null或空字符串,则处理标签包含的内容

equal

如果标签parameter,propertie等属性所指定的变量的值等于标签value属性所指定的值,则处理标签所包含的内容,如:

<logic:equal value="modify" property="action"  name="projectForm">

    <bean:message key="project.project_modify"/>

</logic:equal>

上面的示例表示,如果projectForm的action属性等于modify,则处理<bean:message key="project.project_modify"/>语句。

forward

Forward control to the page specified by the ActionForward entry.

greaterEqual

Evaluate the nested body content of this tag if the requested variable is greater than or equal to the specified value.

greaterThan

Evaluate the nested body content of this tag if the requested variable is greater than the specified value.

iterate

Repeat the nested body content of this tag over a specified collection.

lessEqual

Evaluate the nested body content of this tag if the requested variable is less than or equal to the specified value.

lessThan

Evaluate the nested body content of this tag if the requested variable is less than the specified value.

match

Evaluate the nested body content of this tag if the specified value is an appropriate substring of the requested variable.

messagesNotPresent

Generate the nested body content of this tag if the specified message is not present in this request.

messagesPresent

Generate the nested body content of this tag if the specified message is present in this request.

notEmpty

Evaluate the nested body content of this tag if the requested variable is neither null nor an empty string.

notEqual

Evaluate the nested body content of this tag if the requested variable is not equal to the specified value.

notMatch

Evaluate the nested body content of this tag if the specified value is not an appropriate substring of the requested variable.

notPresent

Generate the nested body content of this tag if the specified value is not present in this request.

present

Generate the nested body content of this tag if the specified value is present in this request.

redirect

Render an HTTP redirect.

 

执行比较功能的标签通用属性表

Name

Description

name

The name of a bean to use to compare against the value attribute. If the property attribute is used, the value is compared against the property of the bean, instead of the bean itself.

parameter

The name of a request parameter to compare the value attribute against.

property

The variable to be compared is the property (of the bean specified by the name attribute) specified by this attribute. The property reference can be simple, nested, and/or indexed.

scope

The scope within which to search for the bean named by the name attribute. All scopes will be searched if not specified.

value

The constant value to which the variable, specified by another attribute(s) of this tag, will be compared.

 

示例:

To check whether a particular request parameter is present, you can use the Logic present tag:

<logic:present parameter="id">

  <!-- Print out the request parameter id value -->

</logic:present>

To check whether a collection is empty before iterating over it, you can use the notEmpty tag:

<logic:notEmpty name="userSummary" property="addresses">

  <!-- Iterate and print out the user's addresses -->

</logic:notEmpty>

Finally, here's how to compare a number value against a property within an ActionForm:

<logic:lessThan property="age" value="21"> 

  <!-- Display a message about the user's age -->

</logic:lessThan>

 

本文地址:http://com.8s8s.com/it/it16525.htm