用Struts Framework创建应用程序(第2部分)

ZDNet软件频道 时间:2002-05-24 作者:BUILDER.COM |  我要评论()
本文关键词:JAVA MVC
本文的上一部分讨论了Struts Framework同MVC设计模式之间的关系。接下来我们继续讨论用Struts具体创建新应用程序的问题。

本文的上一部分讨论了Struts Framework同MVC设计模式之间的关系。现在你应该比较清楚Struts是如何同MVC模式各个组成部分打交道的。接下来我们继续讨论用Struts具体创建新应用程序的问题。

为了用Struts Framework创建新的应用程序,你首先得创建一个新目录树,如下所示:
MyWebApp/
      WEB-INF/
            classes/
             lib/

然后把struts.jar文件从Struts下载目录下的lib目录拷贝到以上目录树的lib目录,同时请把所有的标签库描述符(TLD)文件从Struts lib目录拷贝到WEB-INF目录。

在本文的示例应用程序中,你将创建一个Web应用程序,它通过XML-RPC同Blogger网站管理的服务通讯。该应用程序相当简单,它由一个登录页面和提交新数据到相应服务的页面组成。登录页面会获取用户名和口令,然后把这些信息将保存在一个JAVA bean内。

创建web.xml文件
清单A所示,首先得创建web.xml部署文件,它应该保存在WEB-INF目录下。该文件说明新创建的Web应用程序同时还负责实例化你的控制器servlet。

清单B所示,servlet的定义实例化ActionServlet,它就是Struts控制器。

装载servlet之后就需要把请求映射到该servlet,如清单C所示。在本例中,所有的请求都映射为*.action的形式被传递给Struts控制器。

清单D中指定了要装载的默认页面和用到的标签库。

在如上所示定义了Web应用程序之后我们再了解下控制器的配置细节。

控制器的配置:struts-config.xml
控制器的配置决定了发给控制器的请求将得到怎样的处理。你不妨阅读下struts-config.xml文件(如清单EFG所示),从中可以看出,所有冠以*.action的请求都被映射到了控制器。现在你就必须指定对每一请求该如何处理。

就我们的示例应用程序来说,你需要处理登录请求和页面提交的信息。每个视图都分别具有相应的表单JAVA bean和用于处理的action类。

配置文件分为两个部分:其一是表单JAVA bean,负责指定存储来自视图的参数值以及action映射值的JAVA类。第一部分(如清单F所示)处理提交的信息,而第二部分(清单G)则负责处理登录。以后我们主要讨论对表单的处理。

action映射把入站的servlet请求同表单和action类联系了起来。第1步是为登录过程创建映射。发给服务器的实际请求是页面bloggerLogin.action,但是你只设置了前半部分。接下来,你还得把所有给bloggerLogin.action的请求都保存在bloggerLogin表单JAVA bean内(早就配置为xmlrpc.bloggerUserForm)。xmlrpc.bloggerUserAction类负责处理这个JAVA bean。在action标签内的转发XML元素代表了控制器返回的视图名。每种action类都必须返回下一视图的名字,这样你就可以把文件名保存在配置文件里了。

控制器就配置好了,下面我们来看看登录视图。


百度大联盟认证黄金会员Copyright© 1997- CNET Networks 版权所有。 ZDNet 是CNET Networks公司注册服务商标。
中华人民共和国电信与信息服务业务经营许可证编号:京ICP证010391号 京ICP备09041801号-159
京公网安备:1101082134