首页 > 范文大全 > 正文

基于Struts企业信息系统的设计与实现

开篇:润墨网以专业的文秘视角,为您筛选了一篇基于Struts企业信息系统的设计与实现范文,如需获取更多写作素材,在线客服老师一对一协助。欢迎您的阅读与分享!

摘要:本文论述了Struts的体系结构,利用面向对象建模语言UML对系统进行了设计,论述了系统的整体框架和功能结构,最后阐述了系统实现过程中的相关技术。本系统的实现在使得企业对信息的管理更加及进,高效,提高了工作效率。

关键词:Struts;MVC;UML;信息

中图分类号:TP391文献标识码:A文章编号:1009-3044(2007)16-30910-01

Design and Realization of Business Enterprise Information's Releasing System Based on Struts

LU Pei-jun,ZHANG Yong-jun

(College of Computer Science & Technology Nantong University,Nantong 226019,China)

Abstract:This paper discusses Struts system structure. By using the Unified Modeling Language (UML), design the system. And we has designed the whole frame and function structure of the system At last, discuss main technology realization of the System. The realization of this system makes the control over postgraduate’s information more high-efficient and has improved the working efficient.

Key words:Struts;MVC;UML;Information's Releasing System

1 引言

随着企业经济的发展,规模地不断壮大,各部门的职能和制度地不断完善,企业对于物资采购,资源分配与利用,产品流向,人力资源等相关信息的需要进行统一的管理,Web技术的产生为企业利用Internet进行企业信息的统一管和提供了可能性和实现的方法。Web技术的产生使得企业可以打破传统管理模式在时间、空间上的限制,采用了先进的销售手段和管理方法,并采用操作简便,界面美观,具有较高的扩展性和可维护性的管理系统,来提高企业的运营效率,降低企业成本支出。

2 系统实现原理

2.1 Struts技术

Struts是一个基于J2EE平台的MVC框架,它可以更加快速和容易地建立Web应用程序,其主要是采用Servlet和JSP技术来实现的。MVC是模型―视图―控制器(Model-View-Controller)的简称,它是一种设计模式,它强制性地把应用程序的输入、处理和输出分离。视图,主要负责显示模型状态并接受数据更新请求把用户输入数据传给控制器;模型,主要负责具体的业务流程;控制器,主要负责接受用户的请求调用模型影响用户请求。

2.2 struts工作机制

在Struts框架中,模型由实现业务逻辑的JavaBean或EJB组件构成,控制器由ActionServlet和Action来实现,视图由一组JSP文件构成。基于Struts实现的MVC框架如图1所示:

图1 STRUTS实现MVC模式

2.2.1视图

在Struts中,视图就是一组JSP文件以及ActionFormBean。在JSP文件中没有业务逻辑,也没有模型信息,只有标签,这些标签可以是标准的JSP标签或Struts自带标签。Struts利用ActionFormBean来进行视图和控制器之间数据的传递。Struts把用户输入的表单数据保存在ActionFormBean中,把它传递给控制器,控制器可以对ActionFormBean中的数据进行修改,JSP文件使用Struts标签读取修改后的ActionFormBean的信息,重新设置HTML表单。

2.2.2控制器

控制器由ActionServlet类和Action类来实现。ActionServlet类是Struts中的核心组件,它在MVC模型中扮演中央控制器的角色。ActionServlet主要负责接收Http请求信息,根据配置文件Struts-config.xml的配置信息,把请求转发给适当的Action对象,如果该Action对象不存在,ActionServlet会先创建这个Action对象。Action类负责调用模型的方法,更新模型的状态,并帮助控制应用程序的流程。

2.2.3模型

在Struts中,模型表示应用程序的状态和业务逻辑。对于一般的中小型应用,一般可以用JavaBean实现业务逻辑。对于大型的分布式应用系统,一般采用EJB封装业务逻辑。

3 系统分析与设计

3.1系统架构

系统结构图如图2所示:在前台用户可以查看最新新闻,公司最新的产品。当用户输入正确的用户名和密码后,在后台提供了销售管理、销售查询、用户管理、公告管理,产品管理等模块。

图2 系统的体系结构图

3.2系统主要功能设计

3.2.1用户管理

此模块用于管理系统中的用户。当用户登录通过用户登陆的验证,则可以新建用户,并可以对新建的用户赋予相应的权限修改本店的资料,但是无权修改其他店的资料,而根据设计的权限标识符来判断用户是否具有删除的权限,如果没有删除权限则是普通管理员,只能新建用户,修改资料。

3.2.2公告管理

此模块实现新闻,同时提供相应的管理功能,如添加、删除、修改操作。当管理员登录成功以后即可进入后台管理

3.2.3产品管理

此模块主要实现新产品的详细信息和产品图片等信息的管理。前台可以显示相关的产品信息。后台,用户可以添加新产品,或修改以前产品的资料,也可以删除老产品。每个用户只能删除自己的商品,而无权删除他人的产品。

3.2.4留言管理

通过此模块公司提供一个互动的平台让员工可以发表信息,提出意见。客户和普通员工无需登录即可发表自己的意见。系统管理员可以对留言进行管理。

3.3系统UML建模设计

由于篇幅仅以用户管理模块为例对系统流程进行UML建模设计。模块中主要对用户进行管理,并赋于相关权限,其功能流程及相关类如下阐述。

3.3.1用户管理模块顺序图

在用户点击提交action后,首先调用ConnectionHelper类,通过ConnectionHelper类连接数据库,然后根据用户的选择的功能在UserDAO中调用相应的功能函数,如果期间发生错误则报出相应的错误。具体如图3所示:

图3 用户管理模块顺序图

通过用户管理模块顺序图具体设计出以下实现类:

表1 用户管理模块实现类表

3.3.2用户管理模块类图

对于用户的添加、删除、修改。系统首先从Save4UserForm获得表单信息,然后同过用户点击的功能,提交对应的Action,Action根据用户提交的功能,调用相应的数据困操作,而数据库连接由ConnectionHelper实现,具体功能函数是通过UserDao来实现的。具体如图4所示:

图4 用户管理模块类图

4 Struts技术实现

在用户管理模块中,系统视图中以Search4UserListForm实现相应的分页信息;系统模型以相应的ActionForm的派生类实现,主要对客户端表单数据的封装。系统控制器由ActionServlet类和Action类来实现。Action 类负责调用模型的方法,更新模型的状态,并帮助控制应用程序的流程。如下Save4UserAction部分代码阐述系统中的控制:

public class Save4UserAction extends Action implements FinalConstants{

.....................................

Save4UserForm formbean = (Save4UserForm)form;//创建Save4UserForm实例

conn = ConnectionHelper.getConnection();//通过ConnectionHelper连接数据库

conn.setAutoCommit(false);

UserDAO userDAO = new UserDAO(conn);//创建UserDAO类实例

if(formbean.getId() == null || formbean.getId().trim().length() == 0){//判断ID是否为空

……………

系统中的视图,模型与控制器通过struts-config.xml实现的。具体实现配置如下:

中定义的form-name必须与中的名字一致,否则当我们提交action时找不到对应的action。该配置文件的意思是如果用户数据插入成功则跳转到shopman.jsp,失败则跳转到welcome.do。

5 结束语

以Struts技术实现的企业信息系统对于实现企业管理信息化、网络化,提高企业管理效率,具有重要的现实意义。其功能符合用户需求,能够实现用户管理,产品、新闻管理、销售管理等功能,对于数据的一致性的问题也通过程序进行了有效的解决,提高了现代企业的办公效率。

参考文献:

[1]叶达峰,四维科技.Eclipse编程技术与实例[M].北京:人民邮电出版社,2002,114-69.

[2]张桂元,贾燕枫.Eclipse开发与入门[M].北京:人民邮电出版社,2006,1-54.

[3]James Turner,Kevin Bedell.Struts[M].北京:电子工业出版社,2004,22-67.

[4]张琴,张千帆.从零开始[M].北京:人民邮电出版社,2005,60-98.

注:“本文中所涉及到的图表、公式注解等形式请以PDF格式阅读原文。”