快速业务通道

用Struts开发基于MVC的Web应用 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-23
成。请参考代码 (login.jsp、welcome.jsp)。

1>login.jsp只是简单地提供了用户输入姓名和口令的操作界面。输入完成后,登陆页提交输入到controller Servlet(代码如后Controller部分说明),告诉它需要调用"登陆操作(login action)"(操作参数通过form来传递);

2>welcome.jsp页面利用用户前页提供的用户姓名显示一个欢迎信息。这里只是简单地调用了session中的JavaBean(从userBean的tag标识可以看到)。这个Bean是被Controller置于session中,我们接下来可以看到。

Controller

样例中的controller由一个Servlet构成,代码参见(Controller.class)。实现了我们应用中的Controller。

这是个简单的controller,仅仅根据一个request参数(action)决定调用哪一个action。本例中,页面将login action作为参数传递进来,所以LoginAction被调用。该action实现了一个标准接口(Action),定义了将Request和Response对象作为参数的execute方法。这个action类返回被调用的下一页的路径,于是用户重定向到此页面。

LoginAction类从request中获得username参数,创建一个新的model对象(UserBean),并将其传至Session,并返回"/welcome.jsp"标识流转的下一页面是welcome.jsp.

Model.

我们示例中的model也很简单,仅由一个JavaBean构成。代码参考UserBean.class。

Action的扩展应用

如你所示,这是一个很简单的Model 2应用,但它可以被在更大程度扩展。比如,我们可以动态配置映射request参数的action,我们也可以具体化controler的流转控制(比如action可以通过一个配置管理器(configuration manager)来动态获得需要返回的页面,而不是象现在这样写死在程序里)。

然而,事实上有一个现成的框架提供所有这些控制、MVC组装相关的可配置项,甚至更多。

这个现成的框架就是Struts。

Struts介绍

Struts项目作为一个设想是Craig McClanahan2000年提出的,目标是为利用Java技术开发基于MVC模式的Web应用提供一个标准模式。Struts 1.0在2001年中期被最终发布,现在成为Apache Foundation的Jakarta项目的一部分。Structs应用范围极广,可以用在不同的项目,不同的行业(我所见到的从电信到电子商务都有应用实例)。

Struts是一个高度可配置、高度扩展性的MVC框架,我们几乎可以用它开发任何能想到的用Java技术的Web应用。MVC模式的每一部分在Structs中都有相关对应部分。

用Struts开发基于MVC的Web应用(3)

时间:2010-07-19

Struts的安装

可以在http://apache.get-software.com/jakarta/struts/binaries/jakarta-struts-1.1.zip下载获得Struts的最新版本(目前是1.1)。下载后解压zip文件。发布包中包含了所有开发Struts应用所需的类库。发布包的Webapps目录下有一个空白的Struts Web应用(struts-blank.war),它已经包含了一个Web应用的骨架,非常有用,在这个基础上建立自己的应用显然对初学者能很快得到成就感。

自己的代码放在WEB-INF/classes 目录下,根据自己的需要修改配置文件WEB-INF/struts-config.xml,做到这步,Struts的配置就完成了。现在就拥有了一个完全有效的Struts应用了。

让我们来看看Struts提供的组件

View层

大多数Struts应用的view层是由JSP组成的。为了使view的开发更加容易,Struts提供了一整套JSP自定义的tag库。这些tag库使我们能很容易地提供完全国际化的用户界面,这些界面通常是与Struts应用中的Model组件交互。

通常Web应用的动态前端都是基于HTML表单的,这些应用的用户需要应用的可靠性得到保证,这样就需要表单校验。如果用标准的JSP,记录表单的内容和从一个JavaBean获得表单内容简单乏味而且容易出错。Structs应用FormBean使表单处理和校验变得容易。FormBean与S

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号