通过WebWork实现HelloWorld

在具体开发使用介绍之前,搭建好运行环境是必备的。假设Tomcat的安装和部署已搞定,打开eclipse新建一个Tomcat工程HelloWorld:

企业建站必须是能够以充分展现企业形象为主要目的,是企业文化与产品对外扩展宣传的重要窗口,一个合格的网站不仅仅能为公司带来巨大的互联网上的收集和信息发布平台,成都创新互联面向各种领域:成都玻璃钢坐凳成都网站设计公司营销型网站建设解决方案、网站设计等建站排名服务。


1.在网上下载到***的WebWork压缩包,并将其解压开来。打开解压目录,你将看到以下的文件和目录:

webwork-2.x.jar当然就是WebWrok***发布的Jar包

webwork-example.war是WebWrok自带的很有代表性的功能演示例子,掌握它是提高你的WebWork技术水平的捷径

webwork-migration.jar提供快速将1.x版本移植到2.x版本所用的类文件

docs目录 WebWrok的使用文档,包括api文档、clover文档、单元测试(Junit)文档等

lib目录 WebWork在运行或编译时所用到的所有.jar包

src目录 源程序目录

2.使用WebWork需要将它运行时的Jar包入到Web容器可以找到的ClassPath中:

将步骤1中介绍的webwork-2.x.jar放到Tomcat工程下的WEB-INF\lib目录中,同时也要将..\ webwork-2.2.6\lib\default中的所有jar文件和..\webwork-2.2.6\lib\spring中以spring开头的jar文件也一起放到WEB-INF\lib中,这些都是运行WebWork必需要用到的jar包。

3.Webwork框架是通过一个JavaServlet控制器提供统一的请求入口,解析请求的url,再去调用相应的Action进行业务处理。要求在web.xml文件里配置一个派遣器ServletDispatcher,它初始化WebWrok的一些配置信息,解析XWork的Action配置信息,根据请求去组装和调用执行相应的拦截器(Interceptor)、Action、Action Result(Action执行结果的输出)等,具体配置如下:

 
 
 
  1. ……  
  2.  
  3. webwork servlet-name> 
  4. com.opensymphony.webwork.dispatcher.ServletDispatcher servlet-class> 
  5. servlet> 
  6. ……  
  7.  
  8. webwork servlet-name> 
  9. *.action url-pattern> 
  10. servlet-mapping> 
  11. …… 

这样,.action结尾的所有url请求将直接有ServletDispatcher去调度。

下面我们用一个经典的HelloWorld实例来验证运行环境是否可用,并感受一下简单、功能强大的WebWork的开发。

4.把刚才WebWork的jar包都导进来,项目右键Build Path—Configure Build Path…在弹出的对话框中选择Java Build Path,对应选择右边的Libraries标签页,选择Add JARs…按钮,在弹出的窗口中选择刚建立的工程的HelloWorld—WEB-INF—lib 下面的全部jar包,点OK退出。这时会看到在工程HelloWorld下面多了一些瓶子似的jar,这表明已经成功导入。

5.在WEB-INF/src下建一个Package名字为helloWorld,再建一个class名字为HelloWorldAction,添加代码如下:

 
 
 
  1. package helloWorld;  
  2. import com.opensymphony.xwork.*;  
  3.  
  4. public class HelloWorldAction implements Action{  
  5.   private String hello;  
  6.   public String execute() throws Exception{  
  7.             hello = "Hello World";  
  8.             return SUCCESS;  
  9.   }         
  10.   public String getHello() {  
  11.             return hello;  
  12.   }  
  13.   public void setHello(String hello) {  
  14.             this.hello = hello;  
  15.   }  

HelloWorldAction是一个普通的Java类,它实现了Action这个接口。Action是一个非常简单的接口,只有一个方法:public String execute() throws Exception; ,Action类介绍见下一节。HelloWorldAction有一个String类型字段greeting,在execute()方法中,greeting被赋值“Hello World!”,并返回String型常量SUCCESS,SUCCESS的定义详见Action接口,这个常量代表了execute()方法执行成功,将返回成功页面。

6.右键工程名字新建一个.jsp文件--hello.jsp代码如下:

 
 
 
  1. <%@ taglib prefix="ww" uri="/webwork" %> 
  2. <%@ page language="java" contentType="text/html; charset=GBK"%> 
  3. > 
  4.  
  5.  
  6.  http-equiv="Content-Type" content="text/html; charset=GBK"> 
  7. </strong>First WebWork Example<strong> title></strong> </li> <li><strong> head></strong> </li> <li><strong><body></strong> </li> <li>0000000010100001000010000100000011000010001110000000010000测试数据  </li> <li><strong><p><ww:property</strong> value = "hello"<strong>/> p></strong> </li> <li><strong> body></strong> </li> </ol></pre><p>7.配置web.xml文件:在WEB-INF下面建立web.xml文件,代码如下:</p><pre> <ol> <li><strong><web-app</strong> xmlns="http://java.sun.com/xml/ns/j2ee" </li> <li>    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" </li> <li>    xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" </li> <li>    version="2.4"<strong>></strong> </li> <li><strong><servlet></strong> </li> <li><strong><servlet-name></strong>webwork<strong> servlet-name></strong> </li> <li><strong><servlet-class></strong>com.opensymphony.webwork.dispatcher.ServletDispatcher<strong> servlet-class></strong> </li> <li><strong> servlet></strong> </li> <li> </li> <li><strong><servlet-mapping></strong> </li> <li><strong><servlet-name></strong>webwork<strong> servlet-name></strong> </li> <li><strong><url-pattern></strong>*.action<strong> url-pattern></strong> </li> <li><strong> servlet-mapping></strong> </li> <li><strong><filter></strong> </li> <li>    <strong><filter-name></strong>webwork<strong> filter-name></strong> </li> <li>    <strong><filter-class></strong>com.opensymphony.webwork.dispatcher.FilterDispatcher<strong> filter-class></strong> </li> <li><strong> filter></strong> </li> <li><strong><listener></strong> </li> <li>          <strong><listener-class></strong>org.springframework.web.context.ContextLoaderListener<strong> listener-class></strong> </li> <li><strong> listener></strong> </li> <li><strong> web-app></strong> </li> </ol></pre><p>8.配置xwork.xml文件:在WEB-INF/src下面建立xwork.xml文件,代码如下:</p><pre> <ol> <li></li> <li>"http://www.opensymphony.com/xwork/xwork-1.1.1.dtd"<strong>></strong> </li> <li><strong><xwork></strong> </li> <li><strong><include</strong> file="webwork-default.xml"<strong>/></strong> </li> <li>  <strong><package</strong> name="helloWorld" extends="webwork-default"<strong>></strong>         </li> <li>      <strong><action</strong> name="hello" class="helloWorld.HelloWorldAction"<strong>></strong> </li> <li>      <strong><result</strong> name="success"<strong>></strong>hello.jsp<strong> result></strong> </li> <li>                 </li> <li>            <strong> action></strong>         </li> <li>  <strong> package></strong> </li> <li><strong> xwork></strong> </li> </ol></pre><p>xwork.xml的作用通过使用XWork的命令模式框架和拦截器框架,提供了一个支持Web功能、能快速构建Web应用的命令模式框架。(这是一个标准说法)。</p><p>说白了就是联系刚才的几个文件,传值用的。</p><p>9.在Tomcat安装目录下..\Tomcat 5.5\conf打开sever.xml文件,添加如下代码:</p><pre> <ol> <li><strong><Host</strong> name="test" debug="0" appBase="" unpackWARs="true" autoDeploy="true"<strong>></strong> </li> <li>                     <strong><Context</strong> path="" reloadable="true" docBase="E:\eclipse\HelloWorld" <strong>></strong> </li> <li>                              <strong><Manager</strong> className="org.apache.catalina.session.PersistentManager" debug="0" saveOnRestart="true"   </li> <li>                          maxActiveSessions="1" minIdleSwap="20" maxIdleSwap="60" maxIdleBackup="10" <strong>></strong> </li> <li>                                        <strong><Store</strong> className="org.apache.catalina.session.FileStore" directory="session"<strong>/></strong> </li> <li>                              <strong> Manager></strong> </li> <li>                     <strong> Context></strong> </li> <li><strong> Host></strong> </li> </ol></pre><p>修改系统的host文件,添加如下代码:</p><pre> <ol> <li>127.0.0.1      test </li> </ol></pre><p>10.打开浏览器,输入网址:http://test/hello.action即可看到如下显示:</p><pre> <ol> <li>0000000010100001000010000100000011000010001110000000010000测试数据   </li> <li>Hello World </li> </ol></pre><p>表明通过WebWork实现HelloWorld成功!</p> <br> 网站栏目:通过WebWork实现HelloWorld <br> 标题路径:<a href="http://jxruijie.cn/article/djdchci.html">http://jxruijie.cn/article/djdchci.html</a> </div> </div> <div class="contentr fr"> <h3>其他资讯</h3> <ul> <li> <a href="/article/cooigsd.html">后端开发Golang与Node.js.的比较</a> </li><li> <a href="/article/cooiipj.html">Android菜单系统基本概念详解</a> </li><li> <a href="/article/cooigec.html">海外高防不用备案服务器如何防御攻击</a> </li><li> <a href="/article/cooigij.html">使用Redis迁移测试提升系统效率(redis迁移测试方法)</a> </li><li> <a href="/article/cooiehp.html">用户名这个空间穿了数据库也上传了</a> </li> </ul> </div> </div> </div> <!--底部--> <footer> <div class="foot"> <div class="container"> <h1>广皓图文建站您身边的网站建设服务商</h1> <div class="foot1"> <ul> <li> <dl><i class="iconfont"></i><b>地址ADDRESS</b></dl> <p>四川-成都青羊区太升南路288号<br> 锦天国际A座10楼 </p> </li> <li> <dl><i class="iconfont"></i><b>电话/TEL</b></dl> <p><a href="tel:02886922220" target="_blank">028 86922220</a> (工作日)<br> <a href="tel:18980820575" target="_blank">1898082 0575</a> ( 7x24 ) </p> </li> <li> <dl><i class="iconfont"></i><b>QQ咨询</b></dl> <p> 244261566 (售前)<br> 631063699 (售后) </p> </li> <li> <dl><i class="iconfont"></i><b>邮箱/E: mail</b></dl> <p> service@cdcxhl.com (业务)<br> hr@cdcxhl.com (求职) </p> </li> </ul> </div> <div class="link"> 友情链接: <a href="http://www.njyarui.cn/" title="njyarui.cn" target="_blank">njyarui.cn</a>   <a href="http://www.myzitong.com/" title="梓潼网站制作公司" target="_blank">梓潼网站制作公司</a>   <a href="http://www.zxyucheng.com/" title="成都柴油发电机维修" target="_blank">成都柴油发电机维修</a>   <a href="http://www.ty18.com/" title="ty18.com" target="_blank">ty18.com</a>   <a href="https://www.cdxwcx.com/city/dujiangyan/" title="都江堰做网站" target="_blank">都江堰做网站</a>   <a href="https://www.cdxwcx.com/city/yaan/" title="雅安做网站" target="_blank">雅安做网站</a>   <a href="http://www.cdxwcx.cn/tuoguan/mianyang.html" title="绵阳电信服务器托管" target="_blank">绵阳电信服务器托管</a>   <a href="https://www.cdxwcx.com/wangzhan/h5.html" title="h5响应式网站" target="_blank">h5响应式网站</a>   <a href="http://www.cxhljz.cn/" title="成都网站建设公司" target="_blank">成都网站建设公司</a>   <a href="https://www.cdcxhl.com/" title="网站设计" target="_blank">网站设计</a>    </div> </div> </div> <div class="copy container"> Copyright © 2025 All Rights Reserved. 青羊区广皓图文设计工作室(个体工商户) 版权所有 <a href="http://www.beian.miit.gov.cn/" target="_blank" rel="nofollow">蜀ICP备2025118593号-7</a> [原创设计,独立版权。未经许可.不得拷贝或镜像]<br> <a href="http://www.kswsj.cn/" target="_blank">网站营销推广</a> | <a href="https://www.cdcxhl.com/pinpai.html" target="_blank">品牌网站设计</a> | <a href="http://www.cdweb.net/" target="_blank">自适应网站建设</a> | <a href="http://cdkjz.cn/wangzhan/pinpai/" target="_blank">品牌网站建设</a> | <a href="http://chengdu.cdxwcx.cn/" target="_blank">成都网站制作</a> | <a href="https://www.cdcxhl.com/cloud/" target="_blank">云服务器</a> | <a href="https://www.cdcxhl.com/weihu/abazhou.html" target="_blank">自贡网站维护</a> | (自贡网站建设QQ : 631063699 )</div> </footer> <!--在线咨询--> <div class="fot"> <ul> <li> <a href="mqqwpa://im/chat?chat_type=wpa&uin=532337155&version=1&src_type=web&web_src=oicqzone.com" target="_blank"> <img src="/Public/Home/img/fot1.png" alt="建站咨询"> <p>在线咨询</p> </a> </li> <li> <a href="tel:18980820575" target="_blank"> <img src="/Public/Home/img/fot2.png" alt="建站电话"> <p>拨打电话</p> </a> </li> </ul> </div> </body> </html> <script> $(".con img").each(function(){ var src = $(this).attr("src"); //获取图片地址 var str=new RegExp("http"); var result=str.test(src); if(result==false){ var url = "https://www.cdcxhl.com"+src; //绝对路径 $(this).attr("src",url); } }); window.onload=function(){ document.oncontextmenu=function(){ return false; } } </script>