频道直达:新闻 - 组网 - 安全 - 服务器 - 存储 - 系统 - 应用 - 开发 - 数据库 - 前沿 - 技术人 - 培训 - 求职 - 读书 - 教程 - 专题 - 产品 - 案例 - 技术圈 - 博客 - BBS
51CTO.COM_中国领先的IT技术网站
找资料:

Struts框架及其在Web开发中的应用(2)

作者: 王志和/凌云/毛韶阳 出处:计算机与信息技术 2007-04-02 15:40    砖    好    评论   进入论坛
阅读提示:Struts是当前Web应用开发中最为流行的框架之一。本文简要介绍了MVC(Model/View/Controller)设计模式和Struts框架的体系结构,然后结合一个实例,讲述了Struts实现MVC模式的Web应用的过程。结果显示Struts能够大大提高开发效率,同时提高系统的可维护性和扩充性。

⑶实现模型功能的组件设计

构建模型部分的组件是工作重点,它包含了整个应用程序的业务逻辑。此系统设计的组件为:

①系统状态组件(FormBean),即实体模型类,它继承自ActionForm类,用来存放表单数据,与注册页面的表单对应的数据bean为:

import org.apache.struts.action.*;//引用Struts类包
public class UserForm extends ActionForm{
private String userID= null;
private String password= null;
……
public String getUserID(){return userID;}
public void setUserID(String userID)
{this.userld= userID;}
public String getPassword(){return password;}
public void setPassword(String password)
{this. password=password;}
……}

②指令类组件(ActionBean),它扩展了Action类,主要是用来控制应用程序的流程,当注册考生按“submit”按钮后,来自用户的请求被Servlet(Controller)送到指令类组件RegUserAction,指令类调用相应的业务逻辑进行处理,然后把请求转发给相关的JSP,其程序概要为:

……;
import org.apache.struts.action.*;
public class RegUserAction extends Action
{
public ActionForward perform(ActionMapping
mapping, ActionForm form, HttpServletRequest
req, HttpServletResponse response) {
boolean flag;
String username=req.getParameter(“UserID”);
String password=req.getParameter(“password”);
…… //获取其他注册信息,并根据注册信息,做相应的数据库操作,返回是否注册成功标志flag
if (flag){
try{
UserDirectory.getInstance().setUser(UserID,
password);
return mapping.findForward(“success”);
}catch(UserDirectoryException e) {
return mapping.findForward(“failure”);}
}
return mapping.findForward(“failure”); //注册成功后转发给相应的jsp文件
}

其中UserDirectory是一个helper类,记录UserID和password 到一个标准的属性文件之中。

⑷ 实现控制器功能的指令

Struts框架的核心是控制器类ActionServlet,不需要重新设计而直接使用。ActionServlet的核心是struts-config.xml配置文件,它包含了应用程序的整个逻辑流程。在考生注册信息过程中,用reguserinfo.jsp实现注册页面;用UserForm(扩展了ActionForm)封装了表单数据;用RegUserAction(扩展了Action)实现了考生注册信息(业务逻辑)并控制了应用程序流程;而在struts-config.xml配置文件里实现了注册页面(reguserinfo.jsp)、数据bean(UserForm)、逻辑bean (RegUserAction)之间的联系,其配置信息为:

……;
<struts-config>
<form-beans>
<form-bean name="userForm" type=" UserForm"/>
</form-beans> ……
<action-mappings>
<action path="/reguser" type="RegUserAction"
input="/reguserinfo.jsp" name="userForm"
scope="request">
<forward name="success" path="/regsucess.jsp"/>
<forward name="failure" path="/regfailure.jsp"/>
</action>
</action-mappings></struts-config>

当在注册页面上单击“submit”按钮时,考生请求被提交给ActionServlet, ActionServlet根据struts-config.xml中的配置信息,把/reguser.do的URL映射到RegUserAction,把考生注册信息封装到UserForm,由RegUserAction完成注册操作,然后转发给"/regsuccess.jsp”。由此可见,控制器通过配置文件struts-config.xml把视图和模型联系在一起,struts-config.xml集中了应用程序的整个逻辑流程,此文件无论对于前期的开发还是后期的维护和升级都是非常重要的。

⑸ 系统运行 

启动Tomcat服务器,在浏览器中访问http:// localhost:8080/testWeb/reguser.jsp,就可以运行该系统了。

3、结束语

Struts是一种基于MVC设计模式的Java Web框架,它使系统开发过程各个模块更加细化。利用taglib获得可重用的代码;利用ActionServlet配合struts-config.xml实现对整个系统导航,增强了开发人员对系统的整体把握;用户界面、业务逻辑和业务控制的分离,使系统的层次结构更加清晰,易于分工协作,同时增强系统的可扩展性、维护性。

【责任编辑:火凤凰 TEL:(010)68476606-8007】


共2页: 上一页 [1] 2
【内容导航】
关于 MVC  模式  框架  Struts  Web
专题
企业Web安全威胁在线评估系统
开源框架Eclipse发展历程
解析Ajax开发框架 走进Ajax开发应用
Struts框架应用专题
Hibernate开源框架学习
我也说两句

匿名发表

(如果看不清请点击图片进行更换)


中 国 领 先 的 IT 技 术 网 站 ·
技 术 成 就 梦 想
·Java基础教程 (查看81120次)
·UML类图详解 (查看72587次)
·C++是垃圾语言?! (查看42719次)
·C#技术开发指南 (查看40290次)
·UML统一建模语言 (查看39225次)
·Java编程开发手册 (1198个砖)
·Java基础教程 (431个砖)
·C#技术开发指南 (311个砖)
·.NET开发手册 (254个砖)
·PB开发教程 (223个砖)
·Java编程开发手册 (658个好)
·Java基础教程 (578个好)
·.NET开发手册 (282个好)
·PB开发教程 (213个好)
·Delphi开发技术手册 (200个好)
订阅技术快讯
电子杂志下载
名称:SQL Server数据库管理精品黄皮书
简介:书中文章经过精挑细选,便于用户能根据自己的实际工作和学习,快速在本书寻找到相关资料。内容涵盖了SQL Server的安装与升级、语句查询、数据备份和恢复、自动化任务、数据同步、数据字典、安全和预防、性能和优化、集群等各方面应用信息,以及DBA管理人员在数据库管理工作中
名称:2007路由技术大全
简介:《2007路由技术大全》由51CTO.com网站特别策划制作,该书包括路由器技术、路由器产品、路由器配置、安全设置、路由器故障处理、路由器密码恢复,以及广大网友在实践使用中的心得经验和技巧文章,内容注重实用性,适用于初学者入门,也适合多年从业者提高,是一本实践和理论完
名称:网络安全精品应用黄皮书
简介:《2007精品网络安全黄皮书》包括了9个大类24个小类, 800余篇文章,内容包含了熊猫烧香病毒、DDOS攻击、ARP病等热点问题的介绍及解决方案。从病毒查杀、防范、系统、数据等各方面的安全设置到黑客技术的了解、防范,涉及到了安全应用的全部领域, 由浅至深内容全面。