您的位置:首页 > 编程语言 > Java开发

这是我在学习struts2第三节课件时候记得笔记,内容还算详细,可以看看

2010-07-27 19:46 465 查看
1、iterator
用于迭代集合,集合可包括List,Set,Map还有数组
value:指定被迭代的集合
id:指定集合里的元素的ID
status(里面有很多的属性):指定迭代时IteratorStatus实例,通过该实例可判断当前迭代元素的属性
事例代码:<s:iterator id="sss" value="{'javaSE','javaWeb','javaEE','.NET'}" status="sta">
<tr <s:if test="#sta.odd">bgcolor="gray"</s:if>>
<td><s:property value="sss"/></td>
<td><s:property value="#sta.index+'1'"/></td>
</tr>
</s:iterator>

map对象:#{key1:value1,key2:value2.......}
list对象:{e1,e2,e3....... }

2、iterator迭代Map对象
当Map对象里有很多KEY-VALUE的时候,需要迭代好几次。
用<s:property>取值的时候,将value属性值分别赋给KEY和VALUE
事例代码:<s:iterator value="#{'1':'张三','2':'李四','3':'王五'}">
KEY:<s:property value="key"/><br/>
VALUE:<s:property value="value"/><br/>
</s:iterator>
-----------------------------------------------当把东西放在request里面的时候,怎样取出来------------------------------------------
事例代码:<s:property value="userPass" escape="false" default="默认值"/><br/>
request:<s:property value="#request.userName"/>
3、append控制标签:
将多个集合合并成一个集合
id属性:确定生成的新集合的名称,便于调用
<s:param>子元素:append将<s:param>指定的多个集合合并成新的集合
事例代码;<s:append id="newList">
<s:param value="{'11','22','33'}"/>
<s:param value="{'javase','javaweb','javaee'}"/>
</s:append>
<table>
<s:iterator value="#newList" id="name">
<tr><td><s:property value="name"/></td></tr>
</s:iterator>
</table>
4、property控制标签:
输出value属性指定的值,
escape:指定是否escapeHTML代码
事例代码:
<s:property value="userPass" escape="false" default="默认值"/><br/>
request:<s:property value="#request.userName"/>
5、SET数据标签:
用于设置一个新的变量,并放在指定的范围内
name:属性,必填值,用于指定一个新变量的名称
scope属性:指定新变量被放置的范围(application,session,request,page)
value属性:指定将赋给变量的值
事例代码:<s:set name="x" value="45"/>
<s:property value="#x"/>

<s:set name="xx" value="46" scope="session"/>
<s:property value="#session.xx"/>

<s:set name="xxx" value="47" scope="application"/>
<s:property value="#application.xxx"/>

<s:property value="#attr.xxx"/>

6、url数据标签:
用于生成一个URL地址,可通过param标子元素加请求的参数
事例代码:<s:url action="url_test.action" id="testURl">
<s:param name="id" value="%{id}"></s:param>
</s:url>
<s:property value="#testURl"/>

<s:url action="xx.action" id="aaa">
<s:param name="id" value="'yux'"></s:param>
</s:url>
<s:property value="#aaa"/>
-----------------------------------url验证(源代码)-----------------------------------------------------------------------------------
URL事例代码:<s:url action="reg.action" var="act">
<s:param name="id" value="'yux'"></s:param>
</s:url>
------------------------------------url验证-------------------------------------------------------------------------------------------------
<s:a href="%{act}">222</s:a>
<s:form action="%{act}">
<s:submit value="提交"></s:submit>
</s:form>
7、action数据标签:
在jsp页面中调用指定的action类,并可将结果包含在页面中(executeResult设置为true)
事例代码:
<s:action name="show" executeResult="true" />

表单标签:
用于创建一个html页面
action:用于指定处理该表单数据的action类名
namespace:action的命名空间,(可以省略)
*所有的输入类标签必须在form内使用

textfield标签:用于在表单中创建一个文本输入项
name:指定为action类中用来接收输入属性名
password:同上..........

8、表单标签:datetimepicker
生产一个可选的日历
displayFormat属性:指定日期的显示格式
type属性:指定日期选择框的类型(data,time)
value属性:指定日期的值(可用taday代表今天)
导入:struts-dojo-plugin.jar
导入标签:<%@ taglib prefix="sx" uri="/struts-dojo-tags" %>

事例代码:
<%@ taglib prefix="s" uri="/struts-tags"%>
<%@ taglib prefix="sx" uri="/struts-dojo-tags" %>
<sx:head />

<sx:datetimepicker value="today" type="date" />

9、
***********************表单重复提交*******************************8
就是当提交表单的时候,提交按钮被点击了好几次,造成数据的重复提交

struts2有专门针对这种情况的处理
:<s:token></s:token>
他是由拦截器处理的,但是前提必须把token打开(<interceptor-ref name="token"></interceptor-ref>)
(默认的拦截器站则不会这么处理)stack就是默认的拦截器站

<s: value="date" formdate="yyyy-MM-DD HH-mm-ss"

在页面中导入util包的事例代码:<%@page import="java.util.*" %>
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐