毕业设计 基于web的办公自动化系统.doc
2011届毕业设计(论文)基于web的办公自动化系统教学部:专业:学生姓名:班级:学号指导教师姓名:职称职称最终评定成绩200年月科技学院毕业设计(论文)I摘要办公自动化,简称OA,是办公信息处理的自动化,它利用先进的技术,使人的各种办公业务活动逐步由各种设备、各种人机信息系统来协助完成,达到充分利用信息,提高工作效率和工作质量,提高生产率的目的。所开发的办公自动化系统,基于公司本身内部管理及业务发展需求,应用计算机技术,Internet技术,实现企业办公自动化,管理信息化。本系统采用结构化与原型法结合的系统开发方法。整个系统分为系统整体设计及用作用户登录和注册的用户身份验证模块,用作系统管理员对职工信息进行管理的职工信息管理模块,用作当前登录用户对自己的通讯录进行管理的个人通讯录模块,用作当前登录用户对自己的日程进行管理的日程安排模块、用作当前登录用户对自己的工作日志进行管理的工作日志模块、用作系统各个用户之间互相发送信息的短消息管理模块、用作系统管理员对会议进行管理以及普通用户查看会议信息的会议管理模块、用作系统管理员对公告进行管理以及普通用户查看公告信息的公告管理模块和当前登录用户上传、下载、查看文件的文件管理模块等。系统开发采用先进的开发软件与技术,即采用Dreamweaver页面制作软件与Photoshop等技术相结合开发系统的页面,用JSP动态页面设计技术与Struts2、Spring、Hibernate技术,MySQL数据库管理系统开发强大完善的数据库支持环境。关键词:OA系统,SSH2框架,办公自动化,JSP科技学院毕业设计(论文)IIABSTRACTOfficeautomationabbreviatedasOA,theautomationofinformationprocessingthatwork,itutilizesadvancedtechnology,makesvariousofficialworkingoperationalactivitiesofpeopleshelptofinishbyvariousapparatus,variousman-machineinformationsystemsprogressively,reachandfullyutilizeinformation,improveworkingefficiencyandworkquality,thepurposetoboostProductivity.Theofficeautomatedsystemsbasedonauspiciousopenscientificandtechnologicalcomputertrainingschoolinternalmanagementandbusinessdevelopthedemand,employthecomputertechnology,Internettechnology,realizesenterprisesofficeautomation,managetheinformation.Thissystemadoptsthesystematicdevelopmentapproachthatcombineswithprototypelaw.ThewholesystemintotheoveralldesignandsystemforuserstologinandregistereduserauthenticationmoduleforthesystemadministratortomanagetheinformationworkerstradeunioninformationmanagementmoduleforthecurrentlogofuserstomanagetheirpersonaladdressbookcontactsmoduleForthecurrentlogofuserstomanagetheirownagendaofthescheduleofmodulesforcurrentusersloginthelogoftheirworktomanagetheworkofthelogmoduleforthesystemamongvarioususerssendshortmessageinformationmanagementmoduleforsystemsmanagementMembersofthegeneralmeetingofmanagementandinformationoftheusertoviewthesessionmanagementmoduleforthesystemadministratortomanagethenotice,aswellasordinaryuserstoviewtheinformationnoticemanagementmoduleandthecurrentloguserstoupload,download,viewdocuments,suchasdocumentmanagementmodule.Systemdevelops,adoptadvanceddevelopmentsoftwareandtechnology,andadoptDreamweaverpageanimationsoftwareandPhotoshopped.technologycombinetogetheranddevelopthesystematicpage,useJSPdynamicpagedesigningtechniqueandStruts2,Spring,Hibernate,MySQLdatabasemanagementsystemdevelopsthestrongandcompletedatabaseandsupportstheenvironment.Keywords:OASystem,SSH2Framework,Officeautomation,JSP科技学院毕业设计(论文)III目录第1章前言········································································11.1课题背景····················································································11.1.1办公自动化概述·····································································11.1.2中小企业办公模式的现状·························································21.2研究意义····················································································21.3设计技术及开发环境····································································41.3.1设计技术··············································································41.3.2开发环境··············································································5第2章可行性分析·······························································72.1组织管理和可行性·······································································72.2经济可行性·················································································72.1技术可行性·················································································7第3章需求分析··································································93.1现行业业务分析···········································································93.1.1业务流程··············································································93.1.2功能分析··············································································93.2系统建模···················································································11第4章系统设计·································································174.1系统设计··················································································174.2数据库设计···············································································284.2.1数据库概念设计···································································284.2.2数据库逻辑设计···································································31第5章系统实现·································································345.1系统框架··················································································345.2持久层Hibernate实现·································································355.2.1创建并配置Hibernate映射文件················································355.2.2开发并配置HibernateDao层···················································36科技学院毕业设计(论文)IV5.3控制层struts2············································································365.3.1开发struts2的核心代码··························································365.3.2开发jsp页面·······································································375.3.3增加表单验证功能································································385.3.4调用Dao组件操作数据库·······················································385.4业务层spring············································································385.4.1数据源的配置······································································395.4.2sessionFactory的配置·····························································395.4.3事物配置············································································395.4.4Dao组件配置·······································································395.4.5Dao事物配置·······································································395.5系统功能详细设计······································································40第6章系统测试·································································596.1测试计划··················································································596.2测试用例··················································································596.2.1身份验证测试······································································596.2.2人员管理测试······································································596.3测试结果··················································································59结论···················································································61参考文献·············································································63致谢···················································································64附录1·················································································65附录2·················································································67附录3·················································································69科技学院毕业设计(论文)1第1章前言1.1课题背景1.1.1办公自动化概述办公自动化,英文OfficeAutomation,简称OA,是办公信息处理的自动化,它利用先进的技术,使人的各种办公业务活动逐步由各种设备、各种人、机信息系统来协助完成,达到充分利用信息,提高工作效率和工作质量,提高生产率的目的。办公自动化由70年代末80年代初在我国提出,到现在已有近二十年的发展历史。由于办公自动化技术的不断发展,办公自动化新产品不断的出现,办公自动化的内涵也不断地丰富和发展。(1)传统办公模式图1.1传统办公模式传统的办公模式主要以纸介质为主,在信息革命的浪潮中,显然已经远远不能满足高效率、快节奏的现代工作和生活的需要。如何实现信息处理的自动化和办公的无纸化逐步得到了人们的重视。(2)网络办公模式科技学院毕业设计(论文)2图1.2网络化办公模式现有网络办公自动化系统和大型信息管理系统中,企业业务流程重组或者是文件流转功能都是核心功能。同时企业办公主要是一个文件流转的过程,所有的办公事务都可以抽象成一个数据库对象。(3)WEB方式的办公自动化系统目前办公自动化系统较成熟的模式是客户/服务器方式,而新一代的办公自动化系统则应是Internet/Intranet方式,即B/S(Browser/Server,B/S)结构,才更能适应目前及未来的要求。1.3设计技术及开发环境1.3.1设计技术自从Servlet技术产生以来,J2EE的Web开发技术与开发框架便层出不穷。这些技术和框架的产生,在给我们的开发带来方便的同时,也让我们眼花缭乱,导致疲于学习这些框架。然而一直保持优势地位的不多,目前J2EE各种框架技术的核心技术依然是J2EE的三项基础技术JSP、JavaBean、Servlet,而开源框架还是Struts2+Spring+Hibernate的天下,目前这种组合是最好的选择。(1)JSP页面技术JSP产生于Servlet之后,主要是为了解决Servlet中输出HTML代码效率低的问题而产生的。JSP技术比较简单,类似于ASP、PHP这些脚本语言。JSP的技术主要是由以下两个部分组成:JSP的基本语法:两个注释、3个脚本元素、8个动作指令。JSP的九大内置对象:request请求对象、response响应对象、pageContext页面上下文对象、session会话对象、application应用程序对象、out输出对象、config配置对象、page页面对象和exception例外对象。(2)JavaBean组件技术JavaBean称为“Java豆”,它的原意是封装业务逻辑,以便于外界的调用。调用者可以是JSP,也可以是其他的类。JavaBean组件由一些属性和操作这些属性的函数组成。(3)Servlet技术Servlet产生于JSP技术之前,它最大的特点就是基于线程。与传统的CGI相比,每一个CGI请求都会产生一个新的进程,而每一个Servlet请求都只会产生一个线程,科技学院毕业设计(论文)3这对于系统的利用率来说是一场革命。Servlet是MVC开发的技术,所有基于J2EE的MVC框架都离不开Servlet。通常Servlet用于进行系统的初始化、服务拦截、过滤等。最典型的应用是过滤器、监听器。(4)Struts2Struts是一个基于J2EE平台的MVC框架,主要是采用Servlet和JSP技术来实现的,是开发Web应用程序的开放源码框架。Struts2把Servlet、JSP、自定义标签和信息资源(messageresources)整合一个统一的框架中,开发人员利用其进行开发时不用再自己编码实现全套MVC模式,极大地节省了时间。本系统选用Struts2作为MVC的控制器,因为它足够成熟,用户群广泛。Struts2是Struts的下一代产品。是在struts和WebWork的技术基础上进行了合并,全新的Struts2框架。其全新的Struts2的体系结构与Struts1的体系结构的差别巨大。Struts2以WebWork为核心,采用拦截器的机制来处理用户的请求,这样的设计也使得业务逻辑控制器能够与ServletAPI完全脱离开,所以Struts2可以理解为WebWork的更新产品。因为Struts2和Struts1有着太大的变化,但是相对于WebWork,Struts2只有很小的变化。(5)HibernateHibernate是一个开放源码的对象关系映射(ORM)框架,它对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲地使用对象编程思维来操纵数据库。Hibernate可以应用在任何JDBC的场合,既可以在Java的客户端程序使用,也可以在Servlet/JSP的Web应用中使用,最具革命意义的是,Hibernate可以在应用EJB的J2EE架构中取代CMP,完成数据持久化的重任。(6)SpringSpring是一个轻型容器(light-weightcontainer),是一个目前非常活跃的开源项目。其核心是Bean工厂(BeanFactory),用以构造我们所需要的M(Model)。在此基础之上,Spring提供了IoC(InversionofControl)的容器和AOP(Aspect-OrientedProgramming,面向层面的编程)的实现,用它来提供非管理环境下申明方式的事务、安全等服务;对Bean工厂的扩展ApplicationContext更加方便我们实现J2EE应用;DAO/ORM的实现方便我们进行数据库的开发;WebMVC和SpringWeb提供了JavaWeb应用的框架或与其他流行的Web框架进行集成。科技学院毕业设计(论文)4第2章可行性分析可行性是系统开发的一项关键步骤,它是通过对整个系统的需求,技术及开发方法,以及开发人员,所需资金的综合考虑以评估对于该系统的开发是否符合实际。可行性分析包括:组织和管理上的可行性、技术可行性、经济可行性。2.1组织管理和可行性基于中小型企业的办公自动化系统采用模块化开发方法,将整个系统划分为多个功能模块,并根据开发小组成员的实际能力分配相应的模块,这种将系统功能平行划分的方法有助于系统开发的组织和管理。2.2经济可行性通过网站对企业内部信息进行全面的自动化的管理,大大提高了企业的办公效率。通过系统对企业生产经营过程中的数据进行全面的管理和统计,避免人为处理各类数据时所产生的各种问题,提高了企业的经济效益,为企业经营决策提供了大量的、权威的数据,使企业的管理进行到科学化、系统化的范筹。硬件方面主要是计算机,我们的实际情况可以满足开发任务,所需资料书籍可以到图书馆翻阅或者个人购买,因此整个系统的所需投资符合我们的支付状况,经济可行性良好。2.3技术可行性基于中小型企业的办公自动化系统的开发采用了先进成熟并且符合实际应用的开发方法,广泛应用于网站开发的网页开发工具Dreamweaver,MyEclipse,动态网页开发技术JSP和MVC架构技术Struts2、Spring和Hibernate,功能强大的数据库管理工具MySQL,结合自己的实际开发能力,可以开发出较为完善的办公自动化系统。应解决的主要问题及技术要求(1)收集系统开发所使用的足够的信息。(2)按实际应用的可行性划分模块,确定模块功能。(3)建立完善的数据库支持环境。(4)使用JSP语言实现前台页面视图,使用Struts2、Spring和Hibernate实现MVC