Webwork2学习笔记(一)

最近打算开始学习webwork,在这里我想藉此Blog来记录我的学习历程,也希望和所有webwork的爱好者们一起做个交流

好了废话不多说,我先介绍一下我对此次学习的准备:

1。工具及环境准备
 JDK1.4.2(位置为%JAVA_HOME%)
 Eclipse3.0(推荐插件:lomboz、XMLBuddy、TomcatPlugin)
 Webwork2.1(位置为%WEBWORK_HOME%)
 Tomcat5.0.25

2。学习资料准备
 Webwork2.1自带的教程(在webwork2.1/doc下)


下面学习开始了

[第一个webwork程序helloWorld的搭建]

1。用Eclipse新建一个Tomcat Project,这里我建了一个项目名为Z_Webwork的Tomcat Project.
 Z_Webwork的目录结构如下:
  Z_Webwork/work
  Z_Webwork/WEB-INF
  Z_Webwork/WEB-INF/classes
  Z_Webwork/WEB-INF/lib
  Z_Webwork/WEB-INF/src

2。Import %WEBWORK_HOME%/webwork-2.1.jar 到Z_Webwork/WEB-INF/lib下
  copy %WEBWORK_HOME%/lib/core/*.jar 到Z_Webwork/WEB-INF/lib下

3。设置Eclipse环境的变量
  右击项目Z_Webwork->Properties->Java Build Path->Add Library->User Library
                   ->New 一个用户自定义Library:WEBWORK_LIB
     ->Add JARs %WEBWORK_HOME%/webwork-2.1.jar
     ->Add JARs %WEBWORK_HOME%/lib/core/*.jar

4。建立Webwork中需要用到三个基本的配置文件
  (1)web.xml
 位置:Z_Webwork/WEB-INF/
 内容如下:


"http://java.sun.com/dtd/web-app_2_3.dtd">


 My WebWork Application
 
  webwork
  com.opensymphony.webwork.dispatcher.ServletDispatcher
  1
 

 
  webwork
  *.action
 

 
  webwork
  /WEB-INF/lib/webwork-2.1.jar
 

 

 (2)xwork.xml
 位置:Z_Webwork/WEB-INF/src/
 内容如下:


"http://www.opensymphony.com/xwork/xwork-1.0.dtd">


 
 
 
 
 

 

 

(3)validators.xml
 位置:Z_Webwork/WEB-INF/src/
 内容如下:

1.0//EN" "http://www.opensymphony.com/xwork/xwork-validator-1.0.dtd">


   class="com.opensymphony.xwork.validator.validators.RequiredFieldValidator"/>
  
   class="com.opensymphony.xwork.validator.validators.RequiredStringValidator"/>
  
   class="com.opensymphony.xwork.validator.validators.IntRangeFieldValidator"/>
  
   class="com.opensymphony.xwork.validator.validators.DateRangeFieldValidator"/>
  
   class="com.opensymphony.xwork.validator.validators.ExpressionValidator"/>
  
   class="com.opensymphony.xwork.validator.validators.FieldExpressionValidator"/>
  
   class="com.opensymphony.xwork.validator.validators.EmailValidator"/>
  
   class="com.opensymphony.xwork.validator.validators.URLValidator"/>
  
   class="com.opensymphony.xwork.validator.validators.VisitorFieldValidator"/>
  
   class="com.opensymphony.xwork.validator.validators.ConversionErrorFieldValidator"/>

 

 好了,这样一个webwork的骨架搭好了,整体结构如下图:


5。下面我们将按照Lesson 3: Actions and Results做一个示例
 ex01-index.jsp :此页面将一个表单提交给一个action(HelloWebWorldAction)处理
 HelloWebWorldAction.java :继承ActionSupport实现了HelloWebWorldAction,这里HelloWebWorldAction扮演MVC中的Control
 ex01-success.jsp :HelloWebWorldAction处理成功后将返回此页面
 
 在这里,为了便于管理,我仿照教程在Z_Webwork下建了目录lesson03/example01,并将ex01-index.jsp和ex01-success.jsp置于其下
 HelloWebWorldAction.java位置是Z_Webwork/WEB-INF/src/lesson03,在后续的笔记里,所有的例子我都将按照这种结构存放代码

 各页面代码分别如下:

//ex01-index.jsp



WebWork Tutorial - Lesson 3 - Example 1

Click the button below to activate HelloWebWorldAction.




 

//HelloWebWorldAction.java

package lesson03;

/**
 * @author 泰伯子仪
 * 
 */
import com.opensymphony.xwork.ActionSupport;

public class HelloWebWorldAction extends ActionSupport
{
    String hello;

    public String getHello()
    {
        return hello;
    }

    public String execute() throws Exception
    {
        hello = "Hello, WebWorld!";
        return SUCCESS;
    }
}

//ex01-success.jsp

<%@ taglib uri="webwork" prefix="ww" %>


WebWork Tutorial - Lesson 3 - Example 1



6。配置 xwork.xml
   在和 之间加入如下代码片断:
  
  
  
  
  
   ex01-success.jsp
  

    
修改后的xwork.xml如下:


"http://www.opensymphony.com/xwork/xwork-1.0.dtd">


 
 
 
 
 
  
  
  
  
  
  
   ex01-success.jsp
  

    
 

7。至此,第一个webwork例子建好了,启动Tomcat,
   在浏览器里输入:http://localhost:8080/Z_Webwork/lesson03/example01/ex01-index.jsp
   我们将看到如图页面:
  

   点击“Hello”按钮将出现页面:

 

[例子分析]

这是我做的第一个webwork程序,在这之前我就听说webwork比起struts来说是一种简洁而且优雅的MVC模式的实现框架,这样一看果不其然。

配置简单:在第一个例子里,实际需要我们配置的代码就只有xwork.xml中的一部分action片断

taglib使用方便:这个例子使用了webwork自带的taglib,感觉很棒,以后我会试试velocity,看看感觉如何

你可能感兴趣的:(Java,webwork,interceptor,class,action,include,eclipse)