`
xmx0632
  • 浏览: 119866 次
  • 性别: Icon_minigender_1
社区版块
存档分类
最新评论

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

相关推荐

    webwork学习笔记(全)

    **WebWork 学习笔记(全)** WebWork 是一个基于 Java 的开源MVC(Model-View-Controller)框架,它旨在简化企业级Web应用程序的开发。本教程将全面介绍WebWork的核心概念、架构和使用方法。 **WebWork 介绍** ...

    webwork学习笔记

    ### WebWork学习笔记知识点 #### 一、WebWork框架简介 - **定义**: WebWork是一个由OpenSymphony组织开发的MVC(Model-View-Controller)框架,专注于组件化和代码重用,适用于J2EE应用程序开发。 - **最新版本**:...

    WebWork2学习笔记

    本学习笔记将深入探讨WebWork2的核心概念、主要特性以及如何在实际项目中应用。 首先,WebWork2的核心是Action,它是处理用户请求的中心组件。Action类负责接收HTTP请求,执行业务逻辑,并通过Result将处理结果返回...

    Struts2学习笔记

    根据给定的文件信息,以下是对Struts2学习笔记中涉及的关键知识点的详细解析: ### Struts2框架概览 #### MVC模式的理解与演进 Struts2是基于MVC(Model-View-Controller)模式设计的一种Java Web开发框架。在MVC...

    struts2学习笔记.doc

    ### Struts2学习笔记知识点概览 #### 一、环境搭建 **1.1 Struts2简介** - **Struts2概述**:Struts2是一个开源的MVC框架,它结合了Struts 1.x、WebWork和其他一些框架的优点。Struts2的主要目标是简化Web应用程序...

    ssh学习笔记

    根据提供的文件信息,可以看出这份学习笔记主要关注于SSH(Struts、Spring 和 Hibernate)框架的配置与使用。接下来,我们将详细解析这些知识点。 ### 一、Spring 框架依赖 Spring 是一个开源的轻量级Java开发框架...

    代码学习笔记

    【代码学习笔记】 DWR(Direct Web Remoting)是一个在Java EE环境中广泛应用的AJAX框架,它的核心功能是使得开发者能够像操作本地JavaScript函数一样,便捷地调用服务器端的Java方法。这一特性极大地简化了前后端...

    Java相关课程系列笔记之十三Struts2学习笔记

    本笔记将深入探讨Struts2的核心概念、发展历程、使用方法以及与OGNL(Object-Graph Navigation Language)的结合应用。 **一、Struts2概述** 1.1 为什么要用Struts 在Java Web开发中,Struts2作为MVC框架,能够...

    Struts1及14. Struts2学习笔记

    本学习笔记将对Struts1和Struts2进行详细解析。 **Struts1简介** Struts1是早期流行的MVC框架,它的核心是ActionServlet,负责处理HTTP请求,并通过ActionForm对象收集表单数据,然后调用Action类的方法进行业务...

    struts2学习笔记

    Struts2 是一个流行的开源Java Web框架,它源于WebWork,并结合了Struts1的优点,为开发者提供了强大的MVC(Model-View-Controller)架构支持。在Struts2中,MVC设计模式被用来分离应用程序的不同部分,以提高可维护...

    Struts2.1学习笔记

    ### Struts2.1学习笔记 #### Struts2的来源与优点 - **来源**:Struts2是在WebWork2的基础上发展起来的,它继承了WebWork2的优点,并且进行了改进,使其更适合现代Web应用程序的需求。与Struts1相比,Struts2的...

    webwork in action

    在学习WebWork的过程中,`笔记.pdf`可能是作者或读者整理的学习要点和心得,涵盖了书中关键概念的总结。`[www.whser.com]readme.txt`可能是一个网站的说明文档,提供了更多关于WebWork的在线资源或者示例代码。`JSP...

    struts2 学习重点笔记

    ### Struts2 学习重点知识点总结 #### 一、Struts2 概念与架构 **1.1 Struts2 简介** - **定义**:Struts2 是 Apache 组织提供的一个基于 MVC 架构模式的开源 Web 应用框架。 - **核心**:Struts2 的核心其实是 ...

Global site tag (gtag.js) - Google Analytics