




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、 沈阳工程学院课程设计设计题目WEB程序设计课程设计办公自动化系统的开发系别信息工程系班级网络本111学生姓名李仁祥陈万里高超邹壮壮学号1921316指导教师杨弘平、职称副教授、起止日期:2014年7月6日起至2014年7月20日止沈阳工程学院课程设计任务书课程设计题目:WEB程序设计课程设计办公自动化系统的开发系别信息工程系班级网络本111学生姓名李仁祥陈万里高超邹壮壮学号1921316指导教师杨弘平、职称副教授、课程设计进行地点:实训F任务下达时间:2014年4月12日起止日期:2014年7月6日起至2014年7月20日止教研室主任杨弘平2014年5月12日批准沈阳工程学院数据结构课程设计
2、成绩评定表系(部):信息工程系班级:网本111班学生姓名:李仁祥指导教师评审意见评价内容具体要求权重评分加权分调研论证能独立杳阅文献,收集资料;能制定课程设计方案和日程安排。0.15432工作能力态度工作态度认真,遵守纪律,出勤情况是否良好,能够独立完成设计工作,0.25432工作量按期圆满完成规定的设计任务,工作量饱满,难度适宜。0.25432说明书的质量说明书立论正确,论述充分,结论严谨合理,文字通顺,技术用语准确,符号统一,编号齐全,图表完备,书写工整规范。0.55432指导教师评审成绩(加权分合计乘以8)分加权分合计指导教师签名:年月日评阅教师评审意见评价内容具体要求权重评分加权分查阅
3、文献查阅文献有一定广泛性;有综合归纳资料的能力0.25432工作量工作量饱满,难度适中。0.55432说明书的质量说明书立论正确,论述充分,结论严谨合理,文字通顺,技术用语准确,符号统一,编号齐全,图表完备,书写工整规范。0.35432评阅教师评审成绩(加权分合计乘以4)分加权分合计评阅教师签名:年月日答辩小组评审意见评价容具体要求权重评分加权分学生报汇报准备充分,思路清晰;语言表达准确,概念清楚,论点正确,有层次,有重点,基本上反映了所完成任务的全部内容;时间符合要求。0.55432答思路清晰;回答问题有理论依据,基本概念辩清楚;主要问题回答准确,深入,有说服力。0.5答辩小组评审成绩(加权
4、分合计乘8)分加权分合计答辩小组教师签名:年月日课程设计总评成绩分沈阳工程学院数据结构课程设计成绩评定表系(部):信息工程系班级:网本111班学生姓名:陈万里指导教师评审意见评价内容具体要求权重评分加权分调研论证能独立杳阅文献,收集资料;能制定课程设计方案和日程安排。0.15432工作能力态度工作态度认真,遵守纪律,出勤情况是否良好,能够独立完成设计工作,0.25432工作量按期圆满完成规定的设计任务,工作量饱满,难度适宜。0.25432说明书的质量说明书立论正确,论述充分,结论严谨合理,文字通顺,技术用语准确,符号统一,编号齐全,图表完备,书写工整规范。0.55432指导教师评审成绩(加权分
5、合计乘以8)分加权分合计指导教师签名:年月曰评阅教师评审意见评价内容具体要求权重评分加权分查阅文献查阅文献有一定广泛性;有综合归纳资料的能力0.25432工作量工作量饱满,难度适中。0.55432说明书的质量说明书立论正确,论述充分,结论严谨合理,文字通顺,技术用语准确,符号统一,编号齐全,图表完备,书写工整规范。0.35432评阅教师评审成绩(加权分合计乘以4)分加权分合计评阅教师签名:年月日答辩小组评审意见评价容具体要求权重评分加权分学生报汇报准备充分,思路清晰;语言表达准确,概念清楚,论点正确,有层次,有重点,基本上反映了所完成任务的全部内容;时间符合要求。0.55i432答辩思路清晰;
6、回答问题有理论依据,基本概念清楚;主要问题回答准确,深入,有说服力。0.5答辩小组评审成绩(加权分合计乘8)分加权分合计答辩小组教师签名:年月日课程设计总评成绩分沈阳工程学院数据结构课程设计成绩评定表系(部):信息工程系班级:网本111班学生姓名:高超指导教师评审意见评价内容具体要求权重评分加权分调研论证能独立杳阅文献,收集资料;能制定课程设计方案和日程安排。0.15432工作能力态度工作态度认真,遵守纪律,出勤情况是否良好,能够独立完成设计工作,0.25432工作量按期圆满完成规定的设计任务,工作量饱满,难度适宜。0.25432说明书的质量说明书立论正确,论述充分,结论严谨合理,文字通顺,技
7、术用语准确,符号统一,编号齐全,图表完备,书写工整规范。0.55432指导教师评审成绩(加权分合计乘以8)分加权分合计指导教师签名:年月日评阅教师评审意见评价内容具体要求权重评分加权分查阅文献查阅文献有一定广泛性;有综合归纳资料的能力0.25432工作量工作量饱满,难度适中。0.55432说明书的质量说明书立论正确,论述充分,结论严谨合理,文字通顺,技术用语准确,符号统一,编号齐全,图表完备,书写工整规范。0.35432评阅教师评审成绩(加权分合计乘以4)分加权分合计评阅教师签名:年月日答辩小组评审意见评价容具体要求权重评分加权分学生报汇报准备充分,思路清晰;语言表达准确,概念清楚,论点正确,
8、有层次,有重点,基本上反映了所完成任务的全部内容;时间符合要求。0.55432答辩思路清晰;回答问题有理论依据,基本概念清楚;主要问题回答准确,深入,有说服力。0.5答辩小组评审成绩(加权分合计乘8)分加权分合计答辩小组教师签名:年月日课程设计总评成绩分沈阳工程学院数据结构课程设计成绩评定表系(部):信息工程系班级:网本111班学生姓名:邹壮壮指导教师评审意见评价内容具体要求权重评分加权分调研论证能独立杳阅文献,收集资料;能制定课程设计方案和日程安排。0.15432工作能力态度工作态度认真,遵守纪律,出勤情况是否良好,能够独立完成设计工作,0.25432工作量按期圆满完成规定的设计任务,工作量
9、饱满,难度适宜。0.25432说明书的质量说明书立论正确,论述充分,结论严谨合理,文字通顺,技术用语准确,符号0.55432统,编号齐全,图表完备,书写工整规范。指导教师评审成绩(加权分合计乘以8)分加权分合计指导教师签名:年月曰评阅教师评审意见评价内容具体要求权重评分加权分查阅文献查阅文献有一定广泛性;有综合归纳资料的能力0.25432工作量工作量饱满,难度适中。0.55432说明书的质量说明书立论正确,论述充分,结论严谨合理,文字通顺,技术用语准确,符号统一,编号齐全,图表完备,书写工整规范。0.35432评阅教师评审成绩(加权分合计乘以4)分加权分合计评阅教师签名:年月日答辩小组评审意见
10、评价容具体要求权重评分加权分学生报汇报准备充分,思路清晰;语言表达准确,概念清楚,论点正确,有层次,有重点,基本上反映了所完成任务的全部内容;时间符合要求。0.55432答辩思路清晰;回答问题有理论依据,基本概念清楚;主要问题回答准确,深入,有说服力。0.5答辩小组评审成绩(加权分合计乘8)分加权分合计答辩小组教师签名:年月日课程设计总评成绩分摘要OA系统即指办公自动化,它利用现代技术来提高工作效率,进而实现工作的自动化,改变过去低效而复杂的手工办公方式,大大方便各企事业单位内部员工之间的沟通和交流,实现信息的收集、处理等。使用OA系统不仅提高工作效率,也为大多数企事业节约了大量资金,为二十一
11、世纪提出的节能减排做出应有的贡献。做为集信息化和知识化于一身的一个基础办公平台,将来的OA系统必将朝着这个方向更好的向前发展。本文采用现代最新技术理念对已有的OA系统进行了研究,在研究基础上采用最新的协同办公理念来研究办公自动化系统。本文采用MVC设计模式并基于J2EE架构基础上开发了OA系统,本文所研究系统具有平台无关的特性。对于中小型的企事业单位最适合采用本文所研究的OA系统。他除了能够实现知识管理以外还能够实现分布式的办公。知识管理的特点是能够使各种文件、信息按照一定的权限进行保存、共享和使用,并且对于这些操作还要有一定的查询措施,方便各部门、教研室之间信息的共享与发布、查找和替换,为建
12、立学习型组织打下基础。通过对路由器的设置解决本系统实现跨地域的办公和移动办公。对系统的功能性采用黑盒测试方法进行全面测试,结果表明基本能够满足我校教职工的需要。为了对系统下一步的运行提供更好的依据,在对本系统的测试上采用手工与相关测试软件相结合的方式进行。关键词:JSP工作流办公自动化协同AbstractOArefersofficeautomationsystem,whichusesmoderntechnologytoimproveefficiency,soastorealizetheautomationofwork,changetheinefficientandcomplexmanualof
13、ficeprocedures,greatlyfacilitatetheenterprisesofcommunicationbetweeninternalstaffandexchangeinformationtoachievethecollection,processingandsoon.UsingtheOAsystemnotonlyimproveefficiency,butalsoformostoftheenterprisesandsavesalotofmoneyraisedforthetwenty-firstcenturyandmakeduecontributiontoenergysavin
14、g.Asasetofinformationandknowledgeinanofficeplatform,abasisforthefutureoftheOAsystembetterinthisdirectionwillmoveforward.Inthispaper,theconceptofmodernlatesttechnologyOAsystemontheexistingstudies,research-basedcollaborationusingthelatestofficetostudytheconceptofofficeautomationsystems.Inthispaper,bas
15、edonJ2EEarchitectureusingMVCpatternofdevelopmentoftheOAsystemwithplatformindependence.Thesystemstudiedinthispaperismainlyusedinsmallenterprises.Toachieveknowledgemanagementanddistributedoffice.Knowledgemanagementtoavarietyofdocuments,informationwillbesavedbypermission,shareanduse,butalsotheneedforef
16、fectivesearchmeanstofacilitatethevariousdepartments,informationsharingbetweentheDepartmentandtopublish,findandreplace.Toestablishafoundationforlearningorganizations.Bysettingtheroutertosolvethesystemtoachievecross-regionalofficeandmobileoffice.Functionalityofthesystemfullytestedusingblack-boxtesting
17、methods,theresultsshowthatthefacultycanbasicallymeettheneedsofourschool.Inthispaper,thesecurityofthesystembyhandwithacombinationoftestingtoolstoconductacomprehensiveinspection,theexistingproblemstoimproveforthenextoperationtoprovidereferences.Keywords:JspWorkflowOfficeAutomationCollaborative目录TOC o
18、1-5 h z摘要7Abstract8 HYPERLINK l bookmark24 o Current Document 第一章绪论101.1办公自动化管理系统的背景与意义101.2办公自动化管理系统的功能特性10 HYPERLINK l bookmark26 o Current Document 1.3本文的关键问题及难点11 HYPERLINK l bookmark30 o Current Document 第二章背景技术的介绍1 HYPERLINK l bookmark32 o Current Document MYSQL简介1 HYPERLINK l bookmark36 o Cur
19、rent Document 2.2Java技术简介1 HYPERLINK l bookmark38 o Current Document J2EE体系2 HYPERLINK l bookmark40 o Current Document JavaServlet概述2 HYPERLINK l bookmark42 o Current Document JDBC概述3 HYPERLINK l bookmark44 o Current Document JDBC类型3 HYPERLINK l bookmark46 o Current Document JSP技术4基于MVC设计模式的技术实现5 HY
20、PERLINK l bookmark48 o Current Document 第三章系统分析8 HYPERLINK l bookmark50 o Current Document 3.1总体需求分析8 HYPERLINK l bookmark52 o Current Document 3.2可行性分析93.3系统功能分析11 HYPERLINK l bookmark60 o Current Document 第四章系统总体设计144.1项目规划144.2开发及运行环境144.3数据库15 HYPERLINK l bookmark76 o Current Document 第五章系统详细设计1
21、85.1登录模块18界面设计实现18 HYPERLINK l bookmark78 o Current Document 用户退出系统页面实现22 HYPERLINK l bookmark80 o Current Document 5.4日常管理模块的实现23 HYPERLINK l bookmark86 o Current Document 5.5公告管理模块的实现26 HYPERLINK l bookmark88 o Current Document 5.6员工管理模块的实现30 HYPERLINK l bookmark98 o Current Document 5.7通讯录模块的实现37
22、 HYPERLINK l bookmark106 o Current Document 计划制定模块的实现41 HYPERLINK l bookmark108 o Current Document 考勤模块的实现43 HYPERLINK l bookmark110 o Current Document 5.10退出模块的实现46结论48致谢49参考资料50第一章绪论在科技迅猛发展的今天Internet/Intranet被广泛的使用在各个行业中,企业的管理也随之发展,信息化的程度也随之增长,同时以往的办公管理模式已经无法适应企业的需求,企业对办公的效率要求越来越高,因此就需要一个现代化的办公管理
23、方案来解决企业的这个问题。企业办公正在逐步迈向管理信息现代化企业办公信息化基础设施建设的逐渐完备,改革传统办公模式开展电子政务,使业务办公、公文流转和管理过程电子化、信息化,让文职人员从长期繁杂的办公事务中解放出来,通过统一办公规范,提高工作效率,降低管理成本,实现办公自动化已势在必行。办公自动化管理系统的背景与意义办公自动化管理系统是将现代办公和计算机网络功能结合起来的一种新型的办公方式,是信息化社会的产物。办公自动化系统可以将一个机构的办公用的计算机和其他办公设备连接成网络,这样可以为办公室工作人员和企事业负责干部提供各种现代化手段,从而改进办公条件,提高办公业务的效率和质量,及时向有关部
24、门和领导提供有用的信息。OA起源于政府办公系统,当初的作用主要是公文收发,如今核心内容是提高办公效率、提高团队的整体作战能力以及有效的提供应用信息与素材,从而提高管理水平。广义而言,0A应该是一个企业除了生产控制之外的一切信息处理与管理的集合。它面向不同层次的使用者,有不同的功能表现。通过网络,组织机构内部的人员可跨越时间、地点协同办公。建立一个安全、可靠、开放、高效的办公自动化、信息管理电子化系统。为管理部门提供现代的日常办公条件及丰富的综合信息服务,实现档案管理自动化和办公事物处理自动化,实现企业各内部日常业务工作的规范化、电子化、标准化,增强档案部门文书档案、人事档案、财务档案等档案的可
25、管理性,实现信息的在线查询、借阅。最终实现“无纸”办公,使信息的传递更加快捷和方便,从而极大的扩展了办公手段,实现了办公的高效率。办公自动化管理系统的功能特性办公自动化管理系统对企业日常办公进行管理,实现企业员工之间的消息的发送与接受功能,大大地方便了企业内部人员沟通。同时网站提供的前后台的公告与公文信息的管理,方便员工及时了解公司的动态,与其他功能模块联机操作将使企业的日常管理步入科学系统的管理轨道。此办公自动化管理系统有六个功能模块:日常管理、考勤管理、计划制定,审核管理,通讯管理,员工管理六个模块。六大功能模块分别是:1)日常管理:主要完成会议管理,公告管理。2)考勤管理:主要完成员工的
26、外出,请假,出差,上下班信息的登记3)计划管理:主要完成企业,个人,部门的计划管理。4)审核管理:主要完成发布申请和对申请的审核批示。5)员工管理:主要完成对员工的添加,修改,删除。6)通讯管理:主要完成通讯信息的显示,添加,修改,删除。本文的关键问题及难点我们的课程设计项目是基于J2EE的web项目,同时也是采用JSP+JavaBean+Servlet模式。因此针对此项目涉及到一些关键问题:1、JSP+JavaBean+Servlet环境配置问题,环境变量的设置:变量名java_path、path、classpath的追加,Tomcat的配置:变量名tomcat_homeclasspath的
27、追加。环境变量的设置和Tomcat的配置对初学者来说又是比较头疼,但配置好了很重要。2、集成开发环境选择的问题,好的开发环境对编码效率提高很多。MyEclipse本身集成了非常实用的插件并且支持主流框架,是一个非常好用的集成开发环境,所以我们组选MyEclipse作为课程设计的集成开发环境。服务器的选择我们选Tomcat作为系统的服务器,轻量级的服务器Tomcat对于小型应用是个不错的选择。3、逻辑结构设计本系统数据库采用SQLServer2005数据库,系统数据库名称为OA_Data。数据库OA_Data中包含5张表。数据表有department(部门信息表)、eminfo(员工信息表)、j
28、ob(职位表)、password(用户信息表)。当主键表中的数据发生改变时,引用这个主键值的字段也随之改变,进而确保数据的一致性和完整性。 第二章背景技术的介绍本系统采用JSP技术,运用J2EE架构,基于MYSQL数据库对系统进行开发,本章简要介绍一下开发能用到的关键技术。MYSQL简介MYSQL最早由一家瑞典的MySQLAB公司开发设计,MYSQL是一种关系型数据库系统a】。它的基本特点是:执行速度快、总体容量小,并且由于它是一种开放源代码的数据库,使得它的使用成本大大降低,从而也拓宽了它的使用范围。MYSQL的编写基本上采用用C和C+,调用硬件执行速度非常快,并且它的测试手段灵活,采用大量
29、编译器进行,因此使得它编写出来的代码具有一定的移植性和兼容性。支持NovellNetware、OS/2Wrap、Solaris、Windows等多种操作系统。3它所具有的API功能可以为大多数的编程语言提供。这些编程语言包括C、Python、C+、Java、Perl、Eiffel、PHP等。4.查询速度大大提高,并优化了SQL查询算法。5对于数据库的操作,它提供了许多管理工具例如:检查和优化等。6它能够对多线程技术进行很好的支持,因此使得对CPU的利用率得到大大的提咼。MYSQL数据库不仅可以嵌入到其他的软件中来提供语言支持,也可以独立的作为一个客户端应用到网络中。MYSQL数据库提供对JDB
30、C等的链接。Java技术简介Java技术是由美国Sun公司推出的,是一种简单易用、面向对象、具有跨平台且安全可靠的面向网络的开发工具。Java技术包括Java语言和JavaMediaAPIs、SecurityAPIs、JavaApplet、ManagementAPIs、JavaRMI、JavaBeans、JavaServlet、JavaOS、JDBC等。随着JSP技术的不断成熟,Java也开始逐渐的走进Web开发的舞台。Java技术给我们带来的是一场革命,它是第一个真正跨平台的语言,由于具有平台的无关性,因此Java拥有强大的移植能力和网络处理能力已成为目前我们研究人员、开发人员等青睐的焦点,
31、它对网络计算和动态多媒体信息的处理使得Java与Web结合的开发过程更加成熟。它具有“一次设计,到处运行”的特点,使得整个Web开发世界发生了翻天覆地的变化Ml。J2EE体系J2EE利用Java2平台为企业级的开发等简化操作,是为相关的管理提供一种平台的架构体系,它由Sun公司研究并进行统一标准。J2EE技术的基础核心是Java或Java2平台,J2EE在继承了标准版中的优点外,还提供了对EJB(EnterpriseJavaBeans)、JavaServletAPI等技术的全面支持。EnterpriseJavaBean的向导功能支持打包和部署等相关应用,不仅增强了使用的安全性,同时也提高了基于
32、J2EE体系所开发系统的性能,使用J2EE体系,其最终结果是缩短了开发时间,使得开发者在研究周期所使用的时间上也大大缩短了,在投放市场的时间上有了充足的保障,因此,使用J2EE体系来开发系统不仅可以节省大量的时间,同时也支持对所有应用程序的集成14。JavaServlet概述Servlet技术早于J2EE平台出现,它是一种采用了相关类和方法的Java程序。它提供在WEB上进行请求和响应的服务,它通过对框架的创建来扩展服务器的功能,Servlet是一种服务器端的java应用程序。下面我们来看一下他的技术特占.八、1高效它有许多优点,例如:当N个客户端同时进行访问的时候,servlet可以为每个请
33、求分配一个线程。2跨平台性Servlet和Java语言一样都有跨平台性,它是由Java语言编写,因此具有Java语言的特性。3方便实用由于Servlet提供得许多工具集都封装在各种不同的类中,因此在使用的过程中可以直接对其调用即可。4功能强大Servlet可以和web服务器直接进行交互操作,许多传统CGI完不成的任务,它都可以顺利完成。5数据共享Servlet要想实现数据库连接池可以通过对数据的共享。对用户的请求管理非常方便,简化获取页面信息的操作。可扩展性servlet继承了java语言的许多特点,例如:使用灵活、随意扩展等。高效的安全机制继承java的安全特性,具有SSLCA认证等安全机制
34、。JDBC概述JDBC的接口类型主要有两种,一种是JDBCAPI,它主要是为面向程序开发人员而设计的,另一种是JDBCDriveAPI,它主要是面向底层的。下面我们对JDBCAPI接口做一个初步的了解。程序开发者可以利用JDBCAPI接口对数据库进行连接,并对数据库的相关语句进行操作等。如图2-1给出了JDBCAPI接口的功能图15。图2-1JDBCAPI接口功能图在图2-1所示的JDBCAPI接口中,java.DriveManager的主要功能是将驱动程序加载,从而为新创建的数据库提供一定的支持,java.sql.Connection完成对指定数据库的连接操作,java.sql.Statem
35、ent作为SQL执行声明的容器,java.sql.ResultSet控制给定SQL声明获得的结果信息【。JDBC类型JDBC驱动程序主要分为以下四种类型:1、native-APIpartly-Javadriver它的主要功能是用于将JDBC调用等价的转换为对客户端数据库API的调用。2、JDBC-ODBCbridge主要起到一个桥梁的作用,具有桥接功能。将JDBC转换为ODBC。3、net-protocolall-Javadriver(JDBCProxy)它是一个独立于数据库管理系统的一种网络协议,并基于Java的驱动程序。4、native-protocolallJavadriver和第三种类
36、型的功能有些类似,主要是某些特定数据库的网络协议被JDBC调用转换。JSP技术随着我国科学技术的发展,因特网逐渐走入人们的视野,电子政务也得到了蓬勃的发展,因此人们对动态Web技术的需求越来越多20。JSP技术源于Servlet技术的发展,Servlet技术的不断发展催生了JSP技术,因此JSP技术具有跨平台性,执行速度快,扩展性强等优势。基于以上因素,JSP技术的诞生为Web应用的开发带来了里程碑式的意义,它使得Web开发技术逐渐走向成熟,趋向稳定21。JSP的特点一次编写,随处运行。JSP来源于Java技术,因此,它传承了Java语言所独有的许多特点,能够运行Java虚拟机的操作系统就能运
37、行JSP,如Windows系列、Linux等。自由扩展的JSP标签JSP的优点是可以让所有的Web开发人员自行定义标签。使得标签的使用更加的灵活方便。有统一的技术标准JSP是一种动态的网页技术标准,虽然它最初由Sun公司编写,但是这个标准却是由许多家公司共同建立起来的。因此,大多数的生产商和软件公司都提供支持。执行性能高JSP可以生成一个Servlet线程来响应相同客户的请求,这样就不需要重新编译JSP文件,从而大大提高了程序的执行效率。开发工具多而强大由于JSP技术的基础是Java技术,而Java技术的相关开发工具比较多,如Eclipse等,因此,我们在开发JSP时,可以借助大多数的Java
38、开发工具。JSP与其他技术的区别JSP与ASP,PHP均为动态Web开发技术。ASP由微软公司开发,基于VBScript,它是一种动态网页开发技术,随后,微软公司又推出了ASP.NET,它在ASP的基础上进行了功能的扩展,它大量吸收了面向对象语言c#的特色,他比ASP具有更好的可复用性和可维护性22ASP和ASP.NET是基于COM作为其组件技术,需要与微软公司的IIS绑定,因此只能适用于微软公司开发的系统,基本不具有跨平台性,因此这一弱点成为ASP/ASP.NET发展的瓶颈。PHP是一种具有跨平台性的嵌入式脚本语言,免费的开放源代码的一种开发技术,虽然它具有跨平台性,但是它的缺点是对分布式的
39、处理不够好。虽然三种开发技术都提供在HTML代码中嵌入某些相关程序代码,但JSP编写的代码被编译之后,在Java虚拟机解释执行,并且只对第一次请求时发生,这样就大大的加快了采用JSP技术的页面执行速度23。鉴于以上原因,本文采用JSP技术做为开发工具。2.8基于MVC设计模式的技术实现Struts是一种半程序化的框架,并且它的源代码是开放的。这就使得许多刚刚踏入JSP的新手们可以非常方便、也非常容易学习和使用。由于Struts是一种框架,因此我们在大多数的开发过程中可以直接在这个框架的基础上来进行,而不必从零开始。我们在框架的基础上进行系统的开发后,由于结构非常明确,因此对于开发之后的维护就非
40、常方便,也为以后系统功能的扩展和升级带来一定的好处。Struts框架最初的设计和提出是在2000年,它的主要作用是为当前的Web开发提供一个标准的开发模式GoStruts框架标准化之后,我们广大的开发者和爱好者之间的沟通和技术上的交流更加的方便。Struts1.0版本的发布是在2001年左右,由于它是一个半成品的应用程序,使得它具有一定的扩展性和延续性,我们可以利用Struts来开发目前大多数主流的Web应用。在Struts中的每一部分都与MVC中的每一部分具有一一对应的关系,在设计和开发Web系统的过程中,随着科学技术的不断提升,客户需求的不断增多,如何提高Web的执行效率、可重复使用性等,
41、如何降低成本,一直是我们关注的地方。其中,CraigMcClanahan于2000年5月份提出的JaksrtaStrutsFraneWork,将目前最流行的两种服务器端技术JSP和Servlet融合在一起,为创建一种快速高效的Web应用程序提供了一种新的方法,在未来的开发和设计中,可重复使用的框架技术将成为我们广大开发者逐渐采用的新的技术手段。在我将要叙述的系统中,我主要运用Struts框架,基于Java技术,快速构建了一个结构清晰、可扩展的oa系统。2.8.1架构模式选择为了实现让系统更加灵活,更具有可扩展性,就必须使系统做到高内聚低耦合,那么降低模块与模块间的耦合呢?要降低耦合,模块的功能
42、划分尽可能的单一,道理也很简单,功能单一的模块供其他模块调用的机会就少。那么如何才能做到模块功能化单一呢?MVC设计模式很好的解决了这个问题。通过MVC的分层很好的将每一层的职责划分明确。那么MVC究竟是什么设计模式呢?MVC包括三类对象:1模型(Model)对象:是应用户层序的主体部分。2视图(View)对象:是应用程序中扶着生成用户界面的部分。3控制器(Control)对象:是根据用户的输入,控制也能过户界面数据显示以及更新Model对象状态的部分。它们之间的关系和各自的主要功能,如图2.1:图2.1MVC结构图模型对象是软件处理问题逻辑在独立于外在显示内容和形式情况下的内在抽象,封装了问
43、题的核心数据、逻辑和功能的计算关系,它独立于具体界面表达和I/O操作。视图对象把表示模型数据以及逻辑关系和状态的信息及特定形式展示给用户。它从模型获得显示信息,对于相同的信息可以有多个不同的显示形式或视图。控制对象是处理用户与软件的交互操作的,其职责是控制提供模型中任何变化的传播,确保用户界面于模型间的对应联系;它接受用户的输入,将输入反馈给模型,进而实现模型的计算控制,是使模型和视图协调工作的部件。通常一个视图有一个控制器。MVC有以下优点:可以为一个模型在运行时同时建立和使用多个视图。变化-传播机制可以确保所有相关的视图即使得到模型数据变化,从而使所有关联的视图和控制器做到行为同步。视图与
44、控制器的可接插性,允许更滑视图和控制器对象,而且可以根据需求动态的打开或关闭、甚至在运行期间进行对象替换。模型的可移植性。因为模型是独立于视图的,所以把一个模型独立地移植到新的平台工作。需要做的只是在心平台上对视图和控制器进行新的修改。潜在的框架结构。可以基于此模型建立应用程序框架,不仅仅使用在界面的设计中。总而言之,MVC模式不仅仅实现了功能模块和现实模块的分离,同时它还提高了应用系统的可维护性、可扩展性、可移植性和组件的可复用性。由此可见,MVC正符合我们设计的需要,它很好的解决了模块间的耦合,提高了系统的可维护性和系统的可移植性。2.8.2视图层的选择视图层又叫表示层,表示成的责任是显示
45、,在开源框架里Struts,Struts2,还有JSF都是view,无疑都是很好的选择。这里我们选择Struts2结合JSTL来实现表示层,简单的介绍一下Struts和JSTL。Struts2为Apache组织下的一个开源框架,Struts2框架作为Strutsl.x框架的替代技术,相对Struts1.x来说,有着本质上的改变,Struts2框架是从WebWork框架发展而来的。struts2框架技术整合了Strutsl.x和WebWork的优点,Struts2框架最大的特点就是简单性,引入了OGNL表达式和值栈的概念,可以是开发者使用简单的代码实现负载的数据访问,Action实现类就是一个标
46、准的java类(POJO),这使得测试工作变得简单。JSTL是JSPStandardTagLibrary的简写,翻译成中文叫做JSP标准标签库,它也是Apache开源组织开发的JSP标签库。它是用来显示页面上的变量,它和EL配合使页面上显示参数更为方便,使得页面更符合View层的责任,JSTL可以完全替代页面上的%这些动态脚本,使页面符合HTML的标准。Struts2以其对JSTL和OGNL(Object-GraphNavigationLanguage)的支持,让我选择了Struts2,因为OGNL能够方便的操作对象,所以很适合用于复杂对象在页面上显示。2.8.3控制层的选择控制层的职责是用于
47、处理表示层的请求,表示层向控制层发来请求,控制层再将请求进行转发,转发给逻辑业务层处理,而逻辑业务层处理完反馈给控制层处理的结果,控制层再将结果转发给表示层。无疑在控制层上Struts2是最合适的,Struts2中的Action提供了非常好的控制机制,通过Struts.xml的配置,就能简单的将页面与Action对应起来,从而Action可以非常方便的接受表示层的数据,然后Action调用逻辑业务层的方法,再根据逻辑业务层的返回结果,Action再返回对应Result,Action再根据Struts.xml里配置的Result将数据转发给对应的表示层。在控制层上还可以使用Spring,Spri
48、ng的AOP(Aspect-OrientedProgrammingAspect-OrientedProgramming)即面向切面编程,为系统的权限控制和系统的日志管理提供了很好的支持,有效的将业务逻辑和功能分开了,从而它很好的与struts2的action形成互补。2.8.4模型层的选择模型层封装了问题的核心数据、逻辑和功能的计算关系,它大体上可以划分为两块,一块为上层的逻辑业务,也就是所谓的service层,还有底层的数据访问层,又叫持久层,就是长说道的DAO层。业务层用来处理系统的那个逻辑业务,也就是业务流程,从程序的角度上来说就是算法,这部分是系统的核心。这部分能用上Spring的Io
49、C,通过IoC将业务层的对象生命周期进行有效的管理,方便控制层对业务层的调用,那么什么是IOC呢?IoC(InversionofControl),翻译成中文就是控制翻转,好莱坞有条规则叫做“Dontcallme,Iwillcallyou.这条规则就是IOC的真实写照,通俗点说就是IoC意味着将你设计好的类交给系统去控制,而不是在你的类内部控制。这成为控制翻转。正是因为有了控制翻转,系统才可以不管将来具体的实现,完全在一个抽象层次进行描述和技术架构,这样就是模块与模块之间的耦合度进一步降低,使系统具有良好的可维护性和扩展性。在spring里IoC又叫做DependencyInject-依赖注入。
50、Spring通过DI的方式将业务对象交给IoC容器,使控制层只能通过访问IoC来获得业务层对象,无疑这是将系统的耦合性降低,使系统具备了良好的扩展性。在持久层,Hibernate无疑是实现它的最好选择,在分析之前先简单的介绍一下Hibernate。Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得java程序员可以随心所欲的使用对象编程思维来操纵数据库。Hibernate是一个ORM框架,ORM即对象关系映射,在没有ORM这个概念提出以前,我们的编程到最底层时,采用的是其实都是过程化编程,也就是先获取连接,再操作传入SQL,容纳后在执行数据库操作
51、,最后关闭连接,这就是我们原始的模式。然而我们采用面向对象的编程方式,很显然,采用原始的数据库操作方式是违背了面向对象的思想,那么为什么在ORM没有提出之前,我们没法改变它呢?原因在于我们的数据库是关系型数据库,实体与实体之前只有关系,没有对象关联,这就是任命常说的主抗不匹配,ORM出来之后,它很好的将对象与关系对应起来,在某种意义上讲JDBC的操作封装起来,而程序员只需要操作对象就可以完成对数据库的增删改查,而这一切只需要调用对应的方法即可。所有有了ORM,程序员就可以随心所欲的使用对象编程来操纵数据库。这也是我们选择Hibernate的最主要原因。第三章系统分析总体需求分析该系统是一个企业
52、办公自动化的管理系统,主要用来实现对用户的登录验证,新用户的注册、用户的添加、删除以及编辑,公告的发布,计划制定,用户之间的信息传递,通讯等功能,因此,在设计的时候应该综合考虑,各界面之间应该都有一定的联系,还要确定数据库中需要建立的表的类型,比如用户的管理需要用到建立一个用户表,公告的管理需要建立一个公告信息表,各表中字段的数据类型也要确定,如公告表需要添加系统时间,该字段应该是datetime类型的,每个表中还要设置相应的字段属性,如id需要自增减,这样,不仅简化了管理员的操作,还可以避免数据的重复。为了是网页代码相对简化,还需要建立一些java类,用于页面的调用,并且各类的分工要明确,做
53、到不同的功能要放在不同的类中,这样在调用的时候编程者就很容易的使用自己要用的方法,使得程序的可读性更强。另外,还要注意一些细节之处,比如,网页中所用的图片以及链接到网页的样式表以分类的方式放在指定的文件夹中,这样在其他网页要用到的时候更方便。经调查和分析,本系统将要实现的是能够满足中小型企业的需求功能,能够处理和解决企业基本的办公业务,因此设计了6大功能模块(如图3.1),其中包括日常管理、考勤管理、计划制定,审核管理,通讯管理,员工管理六个模块。系统需实现的是对用户登录的验证及监督,对公告的查看和发布,对公文的接受和发送,对员工信息查看、添加、浏览和删除,对意见的发表和查看。这些功能的实现使
54、企业办公业务自动化,快速了解公司的最近信息、活动、会议和重大决策,减少人力和物力的支出,让企业能在激烈的市场竞争中更加灵活的应付所出现的问题,加强了公司处理业务的能力。日常管理丿”一一一、通讯录吕理图2.1系统功能结构图可行性分析本系统的开发是为了解决传统手工办公操作效率低、信息交流方式不灵活和办公自动化不高的问题,其对于处理一般性的办公业务可行性较强,适用于中小型企业。下面将从经济可行性和技术可行性两方面对系统进行分析。3.2.1经济可行性本系统主要的功能是一般性的办公业务,适用于中小型企业。由于中小企业的经济实力有限,所以要想方便办公的同时也要着重考虑投入/产出比问题。一般商业软件是无法两
55、者兼顾的,由于从基础语言开始开发成本高、周期长,更不现实;因此利用现有软件进行改进,即二次开发,通过对几个商业化软件功能进行修改、增删和开发来实现中小企业建立具有自身个性的办公自动化系统,通过系统集成的方法来将各个功能集成为一个整体发挥作用,通过两次开发的方式来实现降低成本、节约开支、提高效率。本系统应能够适应企业的不断变化,具有可扩展性、易升级性和开放性。因此,它的市场将是无可限量的,将给企业带来的经济效率也是很大的。3.2.2技术可行性在软、硬件方面对系统的需求来看,由于中小企业信息化水平比较低,软硬件配置较差;而且资金实力并不雄厚。所以其对硬件的配置要求是尽可能的低,对软件配置的要求则是
56、系统最好是基于日常办公软件如OFFICE系列上的应用系统,这样既不用花大量资金添置软件,员工又较容易学会使用应用。本系统所实现的功能是一般性质的办公业务,总体的开发时间不用很长,它用到的硬件平台不高,软件基本上是开源且较易懂,项目开发过程中遇到的技术上的问题在网上或书上可找到,因此是在技术上是可行的。该系统所用的软件平台有数据库SQLServer2000、开发工具包JDK1.6、服务器Tomcat6.0,浏览器IE6.0都是开源的其中操作的细节和配置都易学。本系统开发出来时在技术上具有代表当时办公自动化信息系统的先进性,本系统在建成后一段时间内,不会因技术的落后而需要大规模的调整,并且能够跟随
57、时逐步的升级而保持整个系统的先进性。同时本系统对计算机硬件要求不算太高,运行速度较快,对企业办公很方便。本系统最重要的是用到了Struts网络编程,其为基于Java的Web应用程序开发提供了一个框架。本系统的工作流程就是基于Struts下,分为以下步骤:浏览器向服务器发出请求,Controller获得这些请求。Controller根据配置文件struts-config.xml中的定义将这些请求发送到相应的Action,对应图中的Model。Action完成相应的业务逻辑处理后,将处理结果返回到Controller。Controller再根据配置文件struts-config.xml中的定义将处
58、理结果显示到用户视图View。本系统正是利用了Struts工作流程来完成此次设计的整个流程,如图2.2所示:3.3系统功能分析由于本系统可执行的是一般性质的办公业务,提供给中小型企业使用,也可增加功能后提供给大型企业和行政机关。本系统具有一般适用性,其所实现的功能(如图2.3)满足企业对日常性办公业务的管理方便企业内部员工的沟通,方便员工及时的了解公司的动态,是企业的日常管理步入科学系统的轨道上。3.3.1登录功能本系统将要实现用户登录功能。接受用户输入的登录名和密码信息,先做客户端的有效性检验,通过检验后提交给服务器端,由服务器端提交信息与数据库里的信息相比较,如果二者不符则返回相应的出错信
59、息,否则登录进入系统。登录功能还实现了对已登录用户的监听,防止重复登录。本系统中对于登录模块的设计是供企业内部员工使用,使用权的授予是由系统管理员决定的,只有在系统管理员首次在员工管理模块中添加了你的信息后,授予你登录的“姓名”和“密码”后你才能安全登录,在此同时也授予你登录的权限,在权限的范围内你能够完成相应操作。3.3.2日常管理功能实现公告的查看与发布。公告是企业、行政机关向内外宣布重大事件和决议的一种。本系统对于公告管理这一部分将要实现的是两个功能,一个是浏览公告,另外一个是添加新公告。本系统对公告的操作也有权限,普通游客只能够浏览公告而不能添加和删除公告。只有管理员才有资格进行这些操
60、作。实现会议的记录。本系统将要开发会议管理功能模块,会议功能模块主要分为查看会议记录和添加会议记录。此功能有利于公司的员工迅速了解到即将要进行的会议事宜。其中会议记录是以列表的形式呈现给用户,对于查看会议记录是所有能登录本系统的用户都能够浏览和查看的。而添加会议记录只能是管理员身份的用户才能操作,才有权限对记录3.3.3考勤管理功能实现员工考勤的记录。本系统将要对员工出差,外出,上下班,请假的情况进行记录。此功能有利于公司对员工出勤情况进行记录,从而对员工进行评分,评选出优秀员工,激发员工的工作热情。3.3.4计划制定功能实现计划的制定和删除。显示个人计划,部门计划,企业计划,让员工,部门,企
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 无机颜料制造考核试卷
- 乐器声音的数字化处理与优化考核试卷
- 木楼梯的声学性能改善措施考核试卷
- 劳动法律法规解读考核试卷
- 固体废物处理与环保科技创新考核试卷
- 体育会展新媒体运营与粉丝经济考核试卷
- 体育经纪公司体育场馆运营与管理策略考核试卷
- 房屋改建施工合同范本
- 简易土建劳务合同范本
- 俱乐部合同范本模板
- 第三章-农村公共管理组织课件
- 《医古文》教学全套课件580页
- 水电厂计算机监控系统改造技术要求
- 注塑员工培训
- 胜利油田压驱技术工艺研究进展及下步工作方向
- 研究生复试汇报ppt
- 依恋理论之母婴依恋
- 电气CAD-电气图基本知识
- 电气成套设备及元件知识汇总.
- 锯齿形螺纹强度计算公式
- 毕节市疾病预防控制中心卫生应急管理工作规范
评论
0/150
提交评论