`

webwork 学习笔记[zz]

阅读更多
记一个使用iterator标签的例子


java代码: 


/*
* 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
java代码: 


<%@ 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


java代码: 


<%@ 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片断

java代码: 


        <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 留言)
分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics