webwork 学习笔记

记一个使用iterator标签的例子



/*
* Created on 2004-8-2
* author:xmx
*/
package demo.tagdemo;


import com.opensymphony.xwork.Action;
import java.util.List;
import java.util.ArrayList;

public class TagDemoAction implements Action {
//跟需要在页面输入的信息相对应
private User user= new User();;
private String name1;
private int int1;
private float float1;
private double double1;
private String []strs;

public User getUser();{
return this.user;
}

public String execute();{

System.out.println("Start execute 。。。。。。。。。。。。。");;
System.out.println("User="+user);;
//在这里调用用户注册的业务逻辑,比如:将注册信息存储到数据库
System.out.println("Name1="+name1);;
System.out.println("Int1="+int1);;
return SUCCESS;
}

public String[] getProperties(); {
String []back=new String[]{"1","2","3","4","5","6"};
return back;
}
/**
* @return
*/
public String getName1(); {
return name1;
}

/**
* @param string
*/
public void setName1(String string); {
name1 = string;
}

/**
* @return
*/
public int getInt1(); {
return int1;
}

/**
* @param i
*/
public void setInt1(int i); {
int1 = i;
}

/**
* @return
*/
public double getDouble1(); {
return double1;
}

/**
* @return
*/
public float getFloat1(); {
return float1;
}

/**
* 只要在页面显示,设置getXXX();,并且返回对应的数据就可以了
* 数据从service中取到
* @return
*/
public String[] getStrs(); {
String []back=new String[]{"11","22","33","44","55","66"};

return back;
}
/**
* List也可以在页面用iterator显示
* @return
*/
public List getList(); {
List back=new ArrayList();;
back.add("test1");;
back.add("test21");;

return back;
}

public List getUserList(); {
List back=new ArrayList();;
for(int i=0;i<5;i++);{
User tmp=new User();;
tmp.setUsername("UserName"+i);;
back.add(tmp);;
}

return back;
}


/**
* @param d
*/
public void setDouble1(double d); {
double1 = d;
}

/**
* @param f
*/
public void setFloat1(float f); {
float1 = f;
}

/**
* @param strings
*/
public void setStrs(String[] strings); {
strs = strings;
}

}


input.jsp

<%@ page language="java" pageEncoding="GBK" %>


<html>
<head><title>Register Example</title></head>
<body>
<table border=0 width=97%>
<tr><td align="left">
<form name="register" action="tagdemo.action" method="post">
Username:<input type="text" name="user.username"><br>
Password:<input type="text" name="user.password"><br>
Email:<input type="text" name="user.email"><br>
Age:<input type="text" name="user.age"><br>
Name1:<input type="text" name="name1"><br>
Int1:<input type="text" name="int1"><br>
Float1:<input type="text" name="float1"><br>
Double1:<input type="text" name="double1"><br>
<input type="submit" name="Submit"><br>
</form>
</td></tr>
</table>
</body>
</html>



show.jsp



<%@ page language="java" pageEncoding="GBK" %>
<%@ taglib prefix="ww" uri="/WEB-INF/taglib/webwork.tld" %>
<html>
<head>
<title>First WebWork Example---tag-iterator</title>
</head>
<body>
<p>
TagDemoAction.java
<hr>

<ww:iterator value="properties" status="index">
<ww:property />
count =
<ww:property value="#index.count"/>
isfirst =
<ww:property value="#index.first"/>
islast =
<ww:property value="#index.last"/>
index =
<ww:property value="#index.index"/>
iseven =
<ww:property value="#index.even"/>
isodd =
<ww:property value="#index.odd"/>
modulus=
<ww:property value="#index.modulus"/>
<ww:if test="#index.modulus(2); == 0">两个了<br /> </ww:if>
<br />

<p>
</ww:iterator>

<hr>
strs:<br>
<ww:iterator value="strs" status="index">
<ww:property />
<ww:if test="#index.modulus(2); == 0">两个了<br /> </ww:if>
<br />
</ww:iterator>

<hr>
list:<br>
<ww:iterator value="list" status="index">
<ww:property />
<ww:if test="#index.modulus(2); == 0">两个了<br /> </ww:if>
<br />
</ww:iterator>
<hr>
UserList:<br>
<ww:iterator value="userList" status="index">
username[<ww:property value="#index.count"/>]:<ww:property value="username"/> ___
<ww:property />
<ww:if test="#index.modulus(2); == 0">两个了<br /> </ww:if>
<br />
</ww:iterator>


常量显示(不用import):
TEST =
<ww:property value="@demo.Constants@TEST"/>
<hr>
if。。。else。。。<br>
<ww:if test="true == false">
<b>if: Failures</b>
</ww:if>

<ww:elseIf test="true == false">
<b>elseIf: Failure</b>
</ww:elseIf>

<ww:elseIf test="true == true">
<b>elseIf: Success</b>
</ww:elseIf>


<hr>
<ww:if test="1<0">
<b>1<0</b>
</ww:if>

<ww:else>
<b>else: 1>=0</b>
</ww:else>
<hr>

<br>
username:<ww:property value="user.username"/>
,password:<ww:property value="user.password"/>
,email:<ww:property value="user.email"/>
,age:<ww:property value="user.age"/>
,name1:<ww:property value="name1"/>
,int1:<ww:property value="int1"/>
,float1:<ww:property value="float1"/>
,double1:<ww:property value="double1"/>
<hr>
<input type="button" name="back" value="back" onclick="javascript:window.history.back();;">

</p>
</body>
</html>


xwork.xml片断


<interceptors>
<interceptor-stack name="defaultComponentStack">
<interceptor-ref name="component"/>
<interceptor-ref name="defaultStack"/>
</interceptor-stack>

<interceptor-stack name="standard-interceptors">
<interceptor-ref name="static-params"/>
<interceptor-ref name="params"/>
<interceptor-ref name="conversionError"/>
</interceptor-stack>
</interceptors>

<default-interceptor-ref name="standard-interceptors"/>


<!-- tag demo -->
<action name="tagdemo" class="demo.tagdemo.TagDemoAction">
<result name="success" type="dispatcher">
<param name="location">/web/tag_iterator.jsp</param>
</result>
<result name="error" type="dispatcher">
<param name="location">/web/fail.jsp</param>
</result>
<result name="input" type="dispatcher">
<param name="location">/web/tag_iterator.jsp</param>
</result>

<interceptor-ref name="standard-interceptors"/>
</action>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值