如何通过WebWork实现HelloWorld

这篇文章主要为大家展示了“如何通过WebWork实现HelloWorld”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“如何通过WebWork实现HelloWorld”这篇文章吧。

成都创新互联-专业网站定制、快速模板网站建设、高性价比通辽网站开发、企业建站全套包干低至880元,成熟完善的模板库,直接使用。一站式通辽网站制作公司更省心,省钱,快速模板网站建设找我们,业务覆盖通辽地区。费用合理售后完善,10余年实体公司更值得信赖。

假设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执行结果的输出)等,具体配置如下:

……   webworkservlet-name> com.opensymphony.webwork.dispatcher.ServletDispatcherservlet-class> servlet> ……   webworkservlet-name> *.actionurl-pattern> servlet-mapping> ……

这样,.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,添加代码如下:

package helloWorld;  import com.opensymphony.xwork.*;   public class HelloWorldAction implements Action{    private String hello;    public String execute() throws Exception{              hello = "Hello World";              return SUCCESS;    }           public String getHello() {              return hello;    }    public void setHello(String hello) {              this.hello = hello;    }  }

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代码如下:

<%@ taglib prefix="ww" uri="/webwork" %> <%@ page language="java" contentType="text/html; charset=GBK"%> >    First WebWork Exampletitle> head> <body> 0000000010100001000010000100000011000010001110000000010000测试数据  <p><ww:property value = "hello"/>p> body></pre><p>7.配置web.xml文件:在WEB-INF下面建立web.xml文件,代码如下:</p><pre><web-app xmlns="http://java.sun.com/xml/ns/j2ee"     xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"     xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd"     version="2.4"> <servlet> <servlet-name>webworkservlet-name> <servlet-class>com.opensymphony.webwork.dispatcher.ServletDispatcherservlet-class> servlet>  <servlet-mapping> <servlet-name>webworkservlet-name> <url-pattern>*.actionurl-pattern> servlet-mapping> <filter>     <filter-name>webworkfilter-name>     <filter-class>com.opensymphony.webwork.dispatcher.FilterDispatcherfilter-class> filter> <listener>           <listener-class>org.springframework.web.context.ContextLoaderListenerlistener-class> listener> web-app></pre><p>8.配置xwork.xml文件:在WEB-INF/src下面建立xwork.xml文件,代码如下:</p><pre>"http://www.opensymphony.com/xwork/xwork-1.1.1.dtd"> <xwork> <include file="webwork-default.xml"/>   <package name="helloWorld" extends="webwork-default">               <action name="hello" class="helloWorld.HelloWorldAction">       <result name="success">hello.jspresult>                             action>           package> xwork></pre><p>xwork.xml的作用通过使用XWork的命令模式框架和拦截器框架,提供了一个支持Web功能、能快速构建Web应用的命令模式框架。(这是一个标准说法)。</p><p>说白了就是联系刚才的几个文件,传值用的。</p><p>9.在Tomcat安装目录下..\Tomcat 5.5\conf打开sever.xml文件,添加如下代码:</p><pre><Host name="test" debug="0" appBase="" unpackWARs="true" autoDeploy="true">                      <Context path="" reloadable="true" docBase="E:\eclipse\HelloWorld" >                               <Manager className="org.apache.catalina.session.PersistentManager" debug="0" saveOnRestart="true"                             maxActiveSessions="1" minIdleSwap="20" maxIdleSwap="60" maxIdleBackup="10" >                                         <Store className="org.apache.catalina.session.FileStore" directory="session"/>                               Manager>                      Context> Host></pre><p>修改系统的host文件,添加如下代码:</p><pre>127.0.0.1      test</pre><p>10.打开浏览器,输入网址:http://test/hello.action即可看到如下显示:</p><pre>0000000010100001000010000100000011000010001110000000010000测试数据   Hello World</pre><p>表明通过WebWork实现HelloWorld成功!</p><p>以上是“如何通过WebWork实现HelloWorld”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注创新互联行业资讯频道!</p>            
            
                        <br>
            网页名称:如何通过WebWork实现HelloWorld            <br>
            网站地址:<a href="http://bzwzjz.com/article/ippsgp.html">http://bzwzjz.com/article/ippsgp.html</a>
        </div>
    </div>
    <div class="other">
        <h3>其他资讯</h3>
        <ul>
            <li>
                    <a href="/article/phiosi.html">时间css样式,css代码</a>
                </li><li>
                    <a href="/article/phiocs.html">flutter薪资选择,flutter兼职</a>
                </li><li>
                    <a href="/article/phiodd.html">sqlserver改表,sqlserver改表设计保存不了</a>
                </li><li>
                    <a href="/article/phehpd.html">sqlserver在线,sqlserver在线备份不允许的操作</a>
                </li><li>
                    <a href="/article/phiocp.html">c语言中关于函数的调用,c语言中什么是调用函数</a>
                </li>        </ul>
    </div>
</div>
<div class="footer2">
    Copyright © 2007-2020 广东宝晨空调科技有限公司 All Rights Reserved 粤ICP备2022107769号 <br />友情链接:
    <a href="http://www.dzwzjz.com/" target="_blank">达州网站设计 </a><a href="http://www.cdkjz.cn/fangan/led/" target="_blank">LED网站设计方案 </a><a href="http://www.wjwzjz.com/" target="_blank">温江网站设计 </a><a href="http://www.cqcxhl.com/" target="_blank">重庆网站制作 </a><a href="http://www.kswsj.com/" target="_blank">成都网站建设 </a><a href="http://www.cdxwcx.cn/bj/" target="_blank">网站制作报价 </a><a href="https://www.cdcxhl.com/" target="_blank">成都网站设计 </a><a href="https://www.cdxwcx.com/" target="_blank">成都网站建设公司 </a><a href="https://www.cdxwcx.com/wangzhan/gaiban.html" target="_blank">网站建设改版 </a><a href="http://www.myzitong.com/" target="_blank">梓潼网站设计 </a><a href="https://www.cdcxhl.com/waimao.html" target="_blank">外贸网站建设 </a><a href="http://www.lzwzjz.cn/" target="_blank">泸州网站建设 </a><a href="https://www.cdxwcx.com/" target="_blank">成都网站制作 </a><a href="http://www.cqcxhl.com/" target="_blank">重庆网站建设 </a><a href="http://m.xwcx.net/" target="_blank">H5网站制作 </a><a href="http://chengdu.cdxwcx.cn/wangzhan/" target="_blank">手机网站制作 </a><a href="http://m.cdcxhl.com/" target="_blank">网站建设推广 </a><a href="http://www.cdkjz.cn/fangan/response/" target="_blank">响应式网站设计方案 </a><a href="http://www.cxjianzhan.cn/fwxm/yingxiao.html" target="_blank">营销型网站建设 </a><a href="http://www.ybwzjz.com/" target="_blank">宜宾网站设计 </a><a href="https://www.cdxwcx.com/" target="_blank">成都网站建设 </a><a href="http://chengdu.cdcxhl.com/" target="_blank">成都网站制作 </a></div>

</body>
</html>
<script src="/Public/Home/js/wow.min.js"></script>
<script>
    if (!(/msie [6|7|8|9]/i.test(navigator.userAgent))) {
        new WOW().init();
    };
</script>
<div class="sidebar">
    <ul>
        <li><a href="http://wpa.qq.com/msgrd?v=3&uin=244261566&site=www.bzwzjz.com&menu=yes" target="_blank"><img src="/Public/Home/images/right_qq.png" /></a></li>
        <li><a href="http://wpa.qq.com/msgrd?v=3&uin=1683211881&site=www.bzwzjz.com&menu=yes" target="_blank"><img src="/Public/Home/images/qq.png" /></a></li>
        <li class="tel"><a href="tel:028-86922220"><img src="/Public/Home/images/right_tel.png" /></a></li>
        <div class="wx">
            <span class="weixin"><img src="/Public/Home/images/weixin.jpg"><br> 微信扫一扫在线咨询</span>
        </div>
        <li><a class="fx" href="#hero"><img src="/Public/Home/images/right_up.png" /></a></li>
    </ul>
</div>
<script type="text/javascript">
    $(function () {
        $('.sidebar .fx').click(function () {
            $('html,body').animate({
                scrollTop: '0px'
            }, 800);
        });
    });
</script>
<script type="text/javascript">
    $(document).ready(function () {
        $("#fancybox-manual-b").click(function () {
            $.fancybox.open({
                href: 'map.html',
                type: 'iframe',
                padding: 5
            });
        })
    });
</script>
<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>