基于Struts架构的办公自动化系统毕业论文.doc
《基于Struts架构的办公自动化系统毕业论文.doc》由会员分享,可在线阅读,更多相关《基于Struts架构的办公自动化系统毕业论文.doc(83页珍藏版)》请在三一办公上搜索。
1、 基于Struts架构的OA系统的研究与开发2011年11月摘 要随着社会经济的发展,计算机、网络技术的应用已经渗透到企业的日常工作中。传统的办公室管理方式已经不能满足企业对信息的快速传递与处理的需求,而网络办公自动化的应用解决了这一问题,完善企业内部的管理模式,提高了企业内部的管理水平,进而全面得提升了企业在市场竞争中的综合竞争力。办公自动化系统基于网络,提高了企业内部的信息化水平。本文描述了一个办公自动化系统的开发过程,依据面向对象设计的开发思想,利用MVC设计模式,选用浏览器/服务器(B/S)模式搭建,使用Hibernate技术操作数据库,并用Struts完成了系统的最终实现。根据办公自
2、动化的特点,可将系统分为日常管理、考勤管理、计划指定、审核管理、员工管理、通讯管理6个部分。关键词:办公自动化,面向对象,MVC,Struts,Hibernate,B/S目 录第1章 引言1.1办公自动化软件开发的现状当今社会是一个信息飞速发展的社会,因此,针对各行业来说,计算机的应用实为重要,求质量、求速度,尽可能的脱离手工操作,是现代人追求的目标。分析人士指出,在一个企业的运作过程中,交流成本成为了总成本的一个重大构成部分,因此,如何实现快速、有效的交流以降低交流成本成为每个企业所关心的问题。在现代社会中,任何一个行业,任何一个企业,高效准确的办公都是至关重要的。快捷的信息交流,畅通的公文
3、传递,迅速的文档查询,自动的工作流转等等都能提高一个企业的办公效率,进而提高其市场竞争力。图1.1 传统办公模式传统的办公模式主要以纸介质为主,在信息革命的浪潮中,显然已经远远不能满足高效率、快节奏的现代工作和生活的需要。Internet/Intranet的迅猛发展,为信息的交流和共享,团队的协同运作提供了技术的保证,同时也预示着网络化办公时代来临。图1.2 网络化办公模式 现有办公自动化系统中,企业文件流转功能都是核心功能。可以认为,企业办公主要是一个文件流转的过程,所有的办公事务都可以抽象成一个数据库表单。传统办公自动化系统和大型MIS系统在处理企业管理流程中大多采用企业业务流程重组(BK
4、R),其核心思想就是要先优化企业业务管理流程,再根据优化后的流程建设企业信息统。这样不仅在系统建设中工作量巨大,同时面临来自企业内部重重的阻碍。要想实现办公自动化,就需要实施计算机管理,所以,开发了这个办公自动化系统,此系统是基于网络的,部署方便,易于维护。1.2本文要做的工作本文的最终目标是要描述建立一个办公自动化系统的过程。系统选用Struts框架,以MVC设计模式作为软件工程方法,并用JAVA语言实现。本文主要做的工作是描述了此办公自动化系统从分析、设计、到实现的主要工作流程,并在最后阐述系统的使用方法。本系统实现的主要功能模块有:公共模块设计、登录模块设计、主界面设计、日常管理模块、考
5、勤管理模块、计划指定模块、审核管理模块、员工管理模块、通讯管理模块。第2章 运用技术及开发工具介绍该办公自动化系统是在MyEclipse 9.0的环境下开发的,以MS SQL Server2005作为后台数据库,Hibernate作为系统的业务逻辑层,JSP页面作为系统的表现层,通过使用Struts实现的MVC机制,来控制整个办公自动化的业务数据流程。本系统是基于WEB的,所以Internet必须成为浏览器和服务器之间的通信媒介, UML架构模型如图2.1所示:图2.1 架构设计图本系统的具体架构是MVC模式,并用Hibernate对JDBC进行简单封装,具体的物理架构如图2.2所示:图2.2
6、 物理架构图2.1 Struts技术简介Struts最早是作为Apache Jakarta项目的组成部分问世运作。项目的创立者希望通过对该项目的研究,改进和提高Java Server Pages、Servlet、标签库以及面向对象的技术水准。 Struts这个名字来源于在建筑和旧式飞机中使用的支持金属架1。它的目的是为了减少在运用MVC设计模型来开发Web应用的时间。虽然仍然需要学习和应用该架构,但它将可以完成其中一些繁重的工作。 Struts跟Tomcat、Turbine等诸多Apache项目一样,是开源软件,这是它的一大优点,使开发者能更深入的了解其内部实现机制。 除此之外,Struts的
7、优点主要集中体现在两个方面:Taglib和页面导航。Taglib是Struts的标记库,灵活动用,能大大提高开发效率。另外,就目前国内的JSP开发者而言,除了使用JSP自带的常用标记外,很少开发自己的标记,或许Struts是一个很好的起点。2.2 Hibernate技术的应用Hibernate是Java应用和关系数据库之间的桥梁,通过对JDBC的简单封装,使Java程序员可以使用面向对象的思想操作数据表,不用再考虑数据访问细节,可以专注于业务逻辑的开发,它对软件分层做了进一步细化,使数据的持久化与业务逻辑和数据库分开,便于软件的后期维护。在Java应用中使用Hibernate包含以下步骤:1、
8、 创建Hibernate的配置文件。Hibernate配置文件主要用于配置数据库连接和Hibernate运行时所需要的各种属性,这个配置文件应该位于应用程序或Web程序的类文件夹classes中。Hibernate能够访问多种关系数据库,如MySql、Oracle、Sybase等。2、 创建持久化类持久化类符合Java Bean的一般规范,可以作为数据实体的对象化表现形式。通常都是数据表所对应的域模型中的实体域类。在编写持久化类时,主要遵循以下原则:a) 为持久化字段声明访问器和是否可变的标志。 持久化类的属性一般都与数据库中相对应表字段一一对应,并包括与之对应的getXXX()、setXXX
9、()、isXXX()方法。如果持久化类的属性为boolean类型,那么可以使用get或is作为get()方法的前缀。b) 实现一个默认的(即无参数的)构造方法。 所有的持久化类都必须有一个默认的构造方法(可以不是public的)。这样Hibernate就可以使用java.lang.reflect.Constructor.newInstance()来实例持久化类。3、 创建对象关系映射文件。Hibernate采用XML格式的文件来指定对象和关系数据之间的映射。在运行时,Hibernate将根据这个映射文件来生成各种SQL语句。在Hibernate中,映射文件通常用.hbm.xml作为后缀名,该文
10、件与持久化类存放在同一目录下。在User.hbm.xml文件的开头声明了DTD(Document Type Definition),它对XML文件的语法和格式做了定义。Hibernate的XML解析器将根据DTD来核对XML文件的语法。4、 构建SessionFactory。Hibernate的SessionFactory接口提供Session类的实例,Session类用于完成对数据库的操作。由于SessionFactory实例是线程安全的( 而Session实例不是线程安全的),所以每个操作都可以共用同一个SessionFactory来获取Session。Hibernate配置文件分为两种格
11、式:一种是XML格式,一种是Java属性文件格式的配置文件。因此构建SessionFactory的也有两种方法,例程01是在配置文件为Hibernate.properties的情况下构建SessionFactory的,如果Hibernate的配置文件为XML格式,只需在配置文件中声明映射文件,在程序中不必调用Configuration类的addClass()方法来加载映射文件,代码如下:SessionFactory sf=new Configuration().configure().buildSessionFactory();5、 Session的创建与关闭。Session是一个轻量型对象,
12、通常将每个Session实例和一个数据库事务绑定,也就是每执行一个数据库事务,都应该先创建一个新的Session实例。2.3 B/S模式介绍及应用2.3.1 什么是B/S模式 浏览器/服务器(B/S)模式又称B/S结构。它是一种以Web技术为基础的新型的MIS系统平台模式。把传统C/S模式中的服务器部分分解为一个数据服务器与一个或多个应用服务器(Web服务器),从而构成一个三层结构的客户服务器体系2。第一层客户机是用户与整个系统的接口。客户的应用程序精简到一个通用的浏览器软件,如Netscape Navigator,微软公司的IE等。浏览器将HTML代码转化成图文并茂的网页。网页还具备一定的交
13、互功能,允许用户在网页提供的申请表上输入信息提交给后台,并提出处理请求。这个后台就是第二层的Web服务器。第二层Web服务器将启动相应的进程来响应这一请求,并动态生成一串HTML代码,其中嵌入处理的结果,返回给客户机的浏览器。如果客户机提交的请求包括数据的存取,Web服务器还需与数据库服务器协同完成这一处理工作。第三层数据库服务器的任务类似于C/S模式,负责协调不同的Web服务器发出的SQL请求,管理数据库。2.3.2 B/S模式的优缺点 B/S模式简化了客户端。它无需象C/S模式那样在不同的客户机上安装不同的客户应用程序,而只需安装通用的浏览器软件3。这样不但可以节省客户机的硬盘空间与内存,
14、而且使安装过程更加简便、网络结构更加灵活。假设一个企业的决策层要开一个讨论库存问题的会议,他们只需从会议室的计算机上直接通过浏览器查询数据,然后显示给大家看就可以了。甚至与会者还可以把笔记本电脑联上会议室的网络插口,自己来查询相关的数据。其次,它简化了系统的开发和维护。系统的开发者无须再为不同级别的用户设计开发不同的客户应用程序了,只需把所有的功能都实现在Web服务器上,并就不同的功能为各个组别的用户设置权限就可以了。各个用户通过HTTP请求在权限范围内调用Web服务器上不同处理程序,从而完成对数据的查询或修改。现代企业面临着日新月异的竞争环境,对企业内部运作机制的更新与调整也变得逐渐频繁。相
15、对于C/S,B/S的维护具有更大的灵活性。当形势变化时,它无须再为每一个现有的客户应用程序升级,而只需对Web服务器上的服务处理程序进行修订。这样不但可以提高公司的运作效率,还省去了维护时协调工作的不少麻烦。如果一个公司有上千台客户机,并且分布在不同的地点,那么便于维护将会显得更加重要。再次,它使用户的操作变得更简单。对于C/S模式,客户应用程序有自己特定的规格,使用者需要接受专门培训。而采用B/S模式时,客户端只是一个简单易用的浏览器软件。无论是决策层还是操作层的人员都无需培训,就可以直接使用。B/S模式的这种特性,还使MIS系统维护的限制因素更少。最后,B/S特别适用于网上信息发布,使得传
16、统的MIS的功能有所扩展。这是C/S所无法实现的。而这种新增的网上信息发布功能恰是现代企业所需的。这使得企业的大部分书面文件可以被电子文件取代,从而提高了企业的工作效率,使企业行政手续简化,节省人力物力。鉴于B/S相对于C/S的先进性,B/S逐渐成为一种流行的MIS系统平台。各软件公司纷纷推出自己的Internet方案,基于Web的财务系统、基于Web的ERP。一些企业已经领先一步开始使用它,并且收到了一定的成效。B/S模式的新颖与流行,和在某些方面相对于C/S的巨大改进,使B/S成了MIS系统平台的首选,但是它也有不成熟的一面,目前基于B/S模式的应用软件也很缺乏,其最大的缺点是对企业外网环
17、境依赖性太强,由于各种原因引起企业外网中断都会造成系统瘫痪。2.4开发工具的选择2.4.1 MyEclipse介绍与应用MyEclipse企业级工作平台(MyEclipse Enterprise Workbench ,简称MyEclipse)是对EclipseIDE的扩展,利用它我们可以在数据库和JavaEE的开发、发布以及应用程序服务器的整合方面极大的提高工作效率。它是功能丰富的JavaEE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML,Struts,JSP,CSS,Javascript,SQL,Hibernate。在结构上,MyEclipse的特征可以被分为7类:
18、1 JavaEE模型 2 WEB开发工具 3 EJB开发工具 4 应用程序服务器的连接器 5 JavaEE项目部署服务 6 数据库服务 7 MyEclipse整合帮助 对于以上每一种功能上的类别,在Eclipse中都有相应的功能部件,并通过一系列的插件来实现它们。MyEclipse结构上的这种模块化,可以让我们在不影响其他模块的情况下,对任一模块进行单独的扩展和升级。简单而言,MyEclipse是Eclipse的插件,也是一款功能强大的JavaEE集成开发环境,支持代码编写、配置、测试以及除错。2.4.2 Tomcat介绍Jakarta Tomcat 服务器是一种Servlet/JSP容器。S
19、ervlet是一种运行在支持Java语言的服务器上的组件6。 当客户请求访问某个Servlet时,Servlet容器将创建一个ServletRequrst对象和ServletResponse对象。在ServletRequest对象中封装了客户请求信息,然后Servlet容器把ServletRequest对象和ServletResponse对象传给客户所请求的Servlet。Servlet把响应结果写到ServletResponse中,然后由Servlet容器把响应结果传给客户。Servlet容器响应客户请求过程如图2.3所示: 图2.3 Servlet容器响应客户请求过程图第3章 需求分析与系
20、统设计本章描述了此办公自动化系统的需求分析和系统设计,主要对待开发软件进行一般描述和对该软件各功能模块需求进行分析和设计。3.1问题域的一般描述 系统将用户分为2个权限级别:“系统管理员”可对系统中的所有功能进行操作;“普通用户”可对系统中的部分功能进行操作;3.2待开发软件的功能模块需求3.2.1 系统模块功能图开发本软件的目的是为公司办公室提供一个方便快捷的办公平台。经调查分析,本系统应具备的功能模块有:用户登录、会议管理、公告管理、外出登记、请假登记、上下班登记、企业计划指定、部门计划指定、个人计划、发布申请、审核批示、员工添加、员工维护、显示通讯组、增加通讯详细信息。因此,本软件的各个
21、功能划分如图3.1所示。办公自动化管理系统日常管理考勤管理计划指定员工管理审核管理通讯管理会议管理公告管理外出登记请假登记上下班登记企业计划部门计划个人计划发布申请审核批示员工添加员工维护显示通讯组增加通讯详细信息图3.1 系统功能模块图3.2.2 系统模块功能描述1、日常管理日常管理模块包括公告管理、会议管理a.普通用户可以查看公告和会议记录b.系统用户可以对会议、公告进行添加、修改、删除等操作。2、考勤管理考勤管理模块包括外出登记、请假登记、出差登记、上下班登记。a.用户可以进行上下班登记b.用户可以进行外出登记、销假操作c.用户可以进行请假登记、销假操作d.用户可以进行出差登记、销假操作
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 基于 Struts 架构 办公自动化 系统 毕业论文
链接地址:https://www.31ppt.com/p-2387503.html