基于WEB的项目管理系统(PMIS)的体系结构和设计实现.doc

上传人:精*** 文档编号:838231 上传时间:2023-09-08 格式:DOC 页数:37 大小:2.85MB
下载 相关 举报
基于WEB的项目管理系统(PMIS)的体系结构和设计实现.doc_第1页
第1页 / 共37页
基于WEB的项目管理系统(PMIS)的体系结构和设计实现.doc_第2页
第2页 / 共37页
基于WEB的项目管理系统(PMIS)的体系结构和设计实现.doc_第3页
第3页 / 共37页
基于WEB的项目管理系统(PMIS)的体系结构和设计实现.doc_第4页
第4页 / 共37页
基于WEB的项目管理系统(PMIS)的体系结构和设计实现.doc_第5页
第5页 / 共37页
点击查看更多>>
资源描述

1、摘 要本文阐述了一个基于WEB的项目管理系统(PMIS)的体系结构和设计实现过程。系统采用的三层体系结构,JSP-API-SQL开发,即前端由JSP网页实现表现逻辑,后端使用SQL数据库实现数据逻辑,并提出了在线项目管理系统解决方案,提出了多项目分类处理原则。结合我们对项目管理知识的了解,本系统实现了对于项目的基本增加、修改、删除功能,实现了对于合同、标书、质量文件按项目的分类查询;实现了对于不同部门用户权限的管理;系统在Windows 2000平台下开发,能满足中小企业项目管理的需要。关键词:PMIS,WEB,数据库,SQL语言,MS SQL Server,JSPABSTRACT This

2、text has explained a system structure based on Project Management System(PMIS) of WEB and designss process. System of two layers structure that the system adopts, JSP-SQL development, namely the front is realized displaying logic by JSP webpage, the back end uses SQL data base to realize the logic o

3、f the data, propose online project management system solution , put forward special principle that topic classifies. According to the project management knowledge we know , System realize basic increase of project, revise, delete function, realize to project management system every statistics of sub

4、ject, analyse; Realize for category searching of contract and documents of quality ;and, the management of different department customers right scope. The system is developed under Windows 2000 platform, meanwhile, it can almostly satisfies the small-medium enterprises project magenagement.KEYWORDS:

5、PMIS, WEB, DATABASE, SQL-LANGUAGE, MS SQL Server, JSP目 录摘 要错误!未定义书签。ABSTRACT错误!未定义书签。第一章 前言错误!未定义书签。第二章 概述错误!未定义书签。2.1相关的网络应用程序开发工具错误!未定义书签。2.3 JSP的优势错误!未定义书签。第三章 JSP技术简介错误!未定义书签。3.1 JSP错误!未定义书签。3.2 JSP工作原理错误!未定义书签。3.3 JSP体系结构错误!未定义书签。3.4 JSP的特点错误!未定义书签。第四章 设计思想及体系结构错误!未定义书签。4.1 设计思想错误!未定义书签。4.2 开发工

6、具的选用及介绍错误!未定义书签。4.3 系统体系结构错误!未定义书签。4.4 工作流程分析错误!未定义书签。4.5 总体模块分析错误!未定义书签。第五章 系统实现错误!未定义书签。5.1 系统实现原则错误!未定义书签。5.2 系统数据库连接错误!未定义书签。5.3 系统模块设计错误!未定义书签。5.3.1 资源管理错误!未定义书签。5.3.2 进度成本管理错误!未定义书签。5.3.3 质量管理错误!未定义书签。5.3.4 用户登陆错误!未定义书签。结论错误!未定义书签。参考文献错误!未定义书签。33湖南师范大学本科毕业论文第一章 前言Project Managerment:“Project m

7、anagement is the applications of knowledge, skills,tools, techniques to project activities in order to meet or exceed stakeholder needs and expectations from the project.”。项目管理意即:“为了满足甚至超越项目涉及人员对项目的需求和期望而将理论知识、技能、工具和技巧应用到项目的活动中去。要想满足或超过项目涉及人员的需求和期望”。在如今这个知识经济时代,信息革命及其相关技术已经渗透到社会生活的各个方面,计算机与现代管理知识的结合

8、,使我们的日常生活正发生着前所未有的变革。项目管理信息系统PMIS就是这样一种基于计算机技术而进行的项目管理系统。多项目管理的信息量相当大,这给计划工作人员和各级主管人员增加了大量工作,带来了沉重的负担,项目管理信息系统的建立,帮助解决各级主管人员的信息问题。它统一收集,加工处理信息。并以标准化的方式作好信息处理工作;它及时、准确地提供给企业内部各部门及监理公司所需要的信息,将企业的多项目信息资源统一管理,并能实现快速查询,以加强对项目实施中的质量控制,对人力资源和物力资源实施合理的调控和节约,提高各部门的管理工作效率,为主管人员的决策提供有力的支持;它极大地改善了企业的经营,提高企业的适应能

9、力和竞争力。由于企业的主管人员可以随时了解到各个项目的实施状况,从而有利主管人员随时其来规划其生产经营活动,实现数据的共享和综合应用,从而强化企业计划和控制工作的灵活性。它主要是以“项目”为主而进行运作,管理目标是争取让每个项目都能按时完成并保证质量,使“客户满意、企业获利”。项目管理专家把项目管理划分为两个阶段:80年代之前为传统的项目管理阶段,80年代之后为现代项目管理阶段。但在中国,有自己的项目管理体制还是在八十年代之后才形成。长期以来,项目管理水平的低下,导致了在工程中资金、人力、质量、进度等方面的严重失控。基于项目管理的现状,以及目前国内企业对项目管理系统的需求,国内也开发了一些不错

10、的项目管理软件,例如易点的多项目管理系统,其提出了项目立项、招投标管理、合同管理等十八个功能模块,梦龙的智能项目动态控制软件目前是国内工程领域中用户最多的项目进度控制软件,它极易进行进度计划编制、进度计划优化、以及进度跟踪反馈、进度分析、控制等各方面起到方其它软件不可能替代的作用。国外的项目管理软件有:Microsoft Project Management Software(提供了一个包括时间计划和所有项目资源库在内的项目管理信息系统,多项目操作下模块功能独立性强); IMSI TurboProject Professional v4 (向项目组提供了一个比较完善的项目管理支持,同时,对计划

11、管理、计划活动、资源以及预算提供了强大的操作功能); Kform Project Manager Software (此计算机软件用于基于实时编码数据的项目预算、计划、进度跟踪、管理等)。在对国内外同行业项目管理系统的学习和借鉴的基于上,我们也在项目管理系统上作了一个的尝试,通过系统需求分析、设计到测试,历时二个月,开发了基于WEB的项目管理系统。本项目管理系统是基于WEB的项目管理系统,即将系统架设在一个WEB站点上运行,通过浏览器访问,与SQL数据库建立链接,由JSP在服务器端对用户提供的信息进行多线程处理,借助友好的界面将用户希望得到的结果显示于客户端。它提供了传统单机项目管理系统所不能

12、完成的某些功能,例如招投标管理、合同管理等。传统单机项目库都是分散运行的,一般无法高度保持数据的共享和通信,项目库仅为公司内部人员编辑,与监理公司和客户完全脱节,这样容易导致项目库总体质量下降,而对于一个项目库来讲,只有具备广泛的使用才真正具有它的价值,因此对于单机项目库来讲,要想保持良好的项目库质量,又要想让其得到广泛的使用,其难度是相当大的。基于WEB的项目管理系统则可以完美的解决这一难题,它可以实现项目的集中管理,共享使用。从而不但可以拥有集中的专家群,及时更新项目库,反馈项目信息,保证项目库的质量,而且可以通过网络统一管理和控制,从而真正地使通用项目库得到最广泛的使用。第二章 概述2.

13、1相关的网络应用程序开发工具最初的Web应用程序主要是增加文件导航的功能,后来随着HTTP服务器中的CGI(Comman GageWay Interface,通用网关接口)的出现,网络发生了巨大的变化、出现在Internet上的不再只是一个个的静态页面,而是与数据库紧密相关的一个又一个的动态页面。电子商务、电于政务、远程教育,远程医疗、全球定位系统甚至导弹防御系统没有一个不以网络为依托。鉴于Internet的强大用途,先后出现了多种多样的网络应用程序的开发丁具。CGI的出现带来了网络应用的巨大革新,各种网络应用程序的开发工具也应运而生。比较流行的开发网络应用程序的方法有以下几种方柔方案:CGI

14、,ASP,PHP和JSP。这些流行的开发技术各有其优缺点。一、CGICGI。即通用网关接口,是外部应用程序和Web服务器之间的标准编程接口,可以动态扩展Web页的内客。它允许Web服务器运行外部应用程序,通过外部程序来访问数据库等外部资源,以产生动态的HTML文档并返回浏览器。它的执行过程如图2.1所示。图2.1 CGI的执行过程如果浏览器向Web服务器只是请求静态页面,则直接由Web服务器调用存储在服务器上的相应的HTML页面返回给浏览器即可;如果浏览器要求的是动态页面,例如,要申清一个电子邮箱,则出Web服务器将这种请求传到CGI程序,由CGI程序来进行处理。处理时首先通过相应的数据库服务

15、器访问数据库,如果数据库中存在该邮箱,则通过CGI以HTML格式返回相应信息给浏览器;如果数据库中还不存在该邮箱,则把申请的当前邮箱保存在数据库中并返回成功信息,成功信息以HTML文件格式通过Web服务器返回到浏览器端。二、ISAPI由于用C语言或Perl语言来编写CGI程序对一般的编程人员来说,具有相当的难度,同时,为了避免每处理一个CGI请求都启动一个进程来创建动态文档,相继出现了ISAPI,ASP,PHP等新技术,用ASP和PHP技术开发动志网站,可以大大地提高开发效率,但是运行速度和功能比不上ISAPI;ISAPI虽然运行速度较快,但是编写和调试都非常困难,而且移植性很差。ISAPI(

16、Internet Server API)是扩展了的API,可用它代替CGI脚本的功能。ISAPI可用在Web服务器上创建运行为DLL的应用程序,使用ISAPI的应用程序被编译为动态连接库,ISAPI应用启动时装载入内存。ISAPI的优点是占用系统资源少、方便、灵活。但它有以下三点不足:(1)必须具备ISAPI和ODBC的专门编程技术;(2)只能通过程序语句来构造HTML页面,不直观、易出错;(3)ISAPI和Web进程处于同一系统进程空问,遇到违规操作者可能导致Web服务器崩溃。三、ASPASP(Active Server Page,活动服务器网页)是微软公司开发的动态网页技术,是一个WEB服

17、务器端的开发环境,利用它可以产生和运行动态的、交互的、高性能的WEB服务应用程序。ASP采用脚本语言VB Script(Java script)作为自己的开发语言。目前在网站技术建设中占据相当大的份额。四、PHPPHP和ASP一样是运行在服务器端的脚本语言,是一种跨平台的服务器端的嵌入式脚本语言。它大量地借用C,Java和Perl语言的语法,并耦合PHP自己的特性,使WEB开发者能够快速地写出动态生成页面,它支持目前绝大多数数据库。在上述几种Web数据库应用技术中CGI使用最早,但性能较差及开发复杂,ASP采用COM技术在易用性、灵活性、适用性等方面较佳,可以适应比较复杂的应用,是目前最流行的

18、。实现Web数据库应用分为两类,一类是在Web服务器端提供中间件来连接Web服务器和数据库服务器,以上提到的几种都属于该类,另一类是把应用程序下载到客户端,在客户端执行并直接访问数据库。最典型的是Java Applet,它与平台无关,移植性好,与用户交互方便,可提供图形、声音和视颁等多媒休功能。2.3 JSP的优势JSP技术是在这些技术基础上,近几年推出的编写web应用程序的新技术,它以Java语言为脚本语言,秉承了Java语言的优势,是一种实实在在的与平台无关的开发技术。JSP具有很高的开发效率和运行效率,扩展能力强,由于技术规范公开,得到了飞速的发展。在国内虽然占据主流的仍然是ASP和PH

19、P技术,但是,已经有越来越多的网站在关注JSP。与ASP和PHP相比,JSP较显著的特点有:1. JSP具有真正的跨平台特性。 ASP是由微软公司开发的动态网页技术,是基于ActiveX控件技术提供客户端和服务器端的开发组件,因此主要局限于Windows平台下使用。因为ActiveX对象具有平台特性,所以ASP技术不能很容易地在跨平合的Web服务器上工作,虽然Windows NT操作系统占据了很大的市场份额,但是由于它实际上存在的许多问题,而Unix的用户越来越多,而且,新崛起的Linux更是受到了全世界的欢迎。PHP在与平台的相关性方面,比ASP要好许多。但是,仍然不能称为与平台无关的技术。

20、只有JSP程序,几乎可以运行于所有平台,如Window NT,Linux,Solaris,MACOS等。在NT下通过一个插件,如JRun,resin,Tomcat,JSWDK等,就可以完完支持JSP。许多Web服务器现在可以直接支持JSP,如著名的Web服务器Apache,由于Apache广泛应用在NT、Unix和Linux上,因此JSP有更广泛的运行平台。从一个平台移值到另外一个平台,JSP和JavaBean甚至不用重新编译,因为Java字节友都是标准的与平台无关的。2. 对数据库的支持。PHP具有与许多数据库相连的函数,在更换数据库时,可以很容易地更换函数编码来访问不同的数据库。但是,PH

21、P提供的数据库接口不统一,比如对Oracle、MySQL、Sybase的接口,彼此都不一样。ASP使用ODBC通过ADO连接数据库,而Java通过JDBC连接数据库。JDBC是数据库与Java的接口,是一种用于执行SQL语句的Java API,由一组用Java编程语言编写的类和接口组成,使得Java用标准的方式访问数据库。如果数据库没有JDBC驱动程序,而只有ODBC驱动程序,Java提供了一个JDBCODBC桥来将JDBC调用转化为ODBC调用。所有的Java编译器都带有JDBCODBC桥,使得JSP可以访问任何常见的数据库。利用Java API写成的数据库访问应用程序具有通用性,这个程序既

22、可以访问Sybase数据库,也可以访问Oracle数据库,Informix数据库,MS SQL Server数据库等,而不用针对不同的数据库编写不同的应用程序。而且,利用Java编写应用程序,不必担心为不同的平台编写不同的应用程序,因为它具有真正的平台无关性。将Java和JDBC结合编写数据库应用程序,将可以实现程序一次编写,任何平台的任何数据库都可以运行。3运行效率高。JSP程序由JSP执行引擎执行,而JSP执行引擎与HTTP服务器一起常驻内存,而且每一时刻只有一个JSP执行引擎在内存,执行多个JSP程序。在第一次运行JSP程序时,JSP被编译为Java Servlet Class字节代码,

23、由Java虚拟机对这种字节代码进行解释执行,同时编译后的Servlet字节代码常驻于服务器上的Cache中,使得后续的相同请求执行速度非常快。第三章 JSP技术简介3.1 JSPJSP(Java Server Page服务器网页)是从1998年开始出现的新技术。由Sun公司倡导、许多公司参与一起建立的一种动态网页技术标准,是基于JavaServlet以及整个Java体系的web开发技术。在传统的网页HTML文件(*.htm,*.html)中加入脚本片段和JSP标记(Tag),构成JSP网页(*.jsp)。JSP技术为创建显示动态生成内容的web页面提供了简便的方法。JSP作为Java家族的一员

24、,承袭了Java的特点,即跨平台的特性,也即一次编译,到处运行。在国外,己经大量使用JSP作为网络应用程序的开发工具,而在国内,尽管JSP还不是主流开发技术,但是由于JSP的强大优势,许多网站都已经准备转向JSP,利用JSP来开发动态网站。 3.2 JSP工作原理JSP是面向服务器的,因此支持任何浏览器。当Web服务器和JSP引擎遇到访问JSP网页的请求时,JSP引擎将请求对象发送给服务器端的相关组件,比如JavaBean组件、Servlet或EJB等,然后由服务器端组件处理这些请示,可能需要从数据库或数据存储中检索信息,然后服务器端组件再将响应对象返回JSP引擎。JSP引擎将响应对象传递给J

25、SP页面,根据JSP页面的HTML格式完成数据编排,最后Web服务器和JSP引擎将格式化后的JSP页面以HTML格式返回客户浏览器。这就是当前网站构建中广泛采用的浏览器Web服务器后台数据库的三层架构模式。因为JSP所有程序操作都在服务器端执行,网络上传送给客户端的仅是得到的结果。3.3 JSP体系结构JSP网站开发标准给出了两种使用JSP的技术,可以归纳为模式一、模式二。模式一:JSP+JavaBeans技术在这种模式中,JSP页面独自响应请求并将处理结果返回给客户。Bean处理所有数据访问,JSP实现页面的表现,以实现内容生成与显示相分离。当处理复杂的大型应用时,页面被嵌入大量的脚本或Ja

26、va代码段,当需要处理的商业逻辑复杂时,这种情况会变得非常糟糕,大量的内嵌代码使得页面程序变得复杂,对于前端界面设计人员,这是不可思议的事情。所以模式一可用于小型应用,不能够满足大型应用的需要。模式二:JSP+Servlet+JavaBeans技术Servlet技术是一种采用Java技术来实现CGI功能的一种技术,Servlet技术非常适于服务器端的处理和编程,并且Servlet会长期驻留在内存。从开发的观点看,模式二具有更清晰的页面表现,清楚的开发者角色划分,在大规模项目开发中,模式二更被采用,模式二也更符合当前流行的MVC结构(Model/view/controller),其中Servle

27、t对应controller,处于控制者的位置,处理HTTP请求,负责生成JSP中使用的Beans组件或对象,并判断应将请求传递给哪个JSP等,JSP对应view,负责生成最终的动态网页并返回给浏览器。而JavaBeans对应的是Model,实现各个具体的应用逻辑与功能。3.4 JSP的特点1. 简化的页面生成技术。JSP页面用标准的HTML或XML命令来处理页面的格式化和布局设计,而用类似HTML、XML的标记和Java语言编写的脚本程序生成页面内容。这使得页面形式与页面内容互相独立,非常有利于大型项目的分工合作。2. 与Java平台有机集成。JSP技术是Java 2平台的重要组成部分,JSP

28、使用Java语言作为它的脚本语言。在JSP页面中可以使用几乎所有的Java组件和Java API,这就能充分发挥出Java语言的强大功能。使用JSP技术可以创建具有高度可伸缩性和可靠性的Web应用程序。3. 硬件平台和服务器无关性。JSP作为Java家族的一员,秉承了Java技术的“一次编写,随处可用(Write Once,Rum Anywhere)”的特性,可以运行于大多数流行的操作系统平台及Web服务器,这种与服务器硬件和操作系统平台的无关性是JSP相对于其它动态网页技术最大的一个优点。4. 功能可扩展性。如同Microsoft的ASP技术可以通过ActiveX/COM组件来扩展功能一样,

29、JSP可以通过JavaBean和EJB(Enterprise JavaBean)以及自定义的标记来扩展功能。JSP可以通过JDBC,与诸如Oracle、SQL Server这样的大型关系数据库进行连接。JSP提供了一些隐含对象。这些隐含对象在JSP页面中可以直接引用,而不必首先声明。利用JSP提供的这些隐含对象,可以使脚本功能更加强大,并且编程更加容易、方便。例如,利用request对象,可以很容易地接收用户在HTML表单中提交的信息。第四章 设计思想及体系结构4.1 设计思想随着各个行业信息化建设项目的增多,如何有效的管理项目、控制项目成为日益突出的问题。基于此,由肖柳明老师提出的基于B/S

30、的项目管理系统就成为了我们此次毕业设计的研究课题。此系统结合现代项目管理理论,适用于大中型企事业单位的全面的项目管理。JSP是最近几年才出现的新技术,系统以JSP为平台,设计了一个基于浏览器/服务器的三层结构的项目管理系统。4.2 开发工具的选用及介绍系统采用JSP技术作为实现数据库远程维护的工具,利用Microsoft SQL 2000作为数据库管理系统建立数据库,操作系统为Windows 2000 Server,应用程序服务器为Tomcat,开发工具为Dreaweaver 2004。对JSP和JaveBean中间件等技术的研究和编程实现。为网络数据库的远程维护进行了有益的探索。4.3 系统

31、体系结构项目管理系统按计算机管理信息系统设计相关规范规程的要求开发,采用了现代软件工程的方法,采用Tomcat 4.1.18作为JSP引擎, 充分利用JSP的基础类库提供的各种服务。开发过程经历了需求分析与概要设计、总体设计、功能测试与程序完善三个阶段。系统采用三层结构,在客户端用户通过浏览器完成数据下载与模拟操作,浏览器端的表现逻辑通过JSP网页完成。而系统内部复杂的业务逻辑主要通过JAVA SERVLET在WWW服务器上运行,通过JSP返回到客户浏览器。通过表现逻辑与业务逻辑的分离,使网页内容简洁。在服务器端,系统使用JDBC中间件访问数据库,数据库服务器定义了本系统所需要的事务逻辑和数据

32、逻辑。4.4 工作流程分析工作流程如图4.1所示图4.1 工作流程图工作流程描述:进入系统,首先需要进行用户的身份验证,然后根据用户所属部门的不同分别分配权限,进行相应的操作。1. 设计部门设计部门在项目开始立项之初就要求对项目的相关信息作全面的了解,组织立项,对项目的可行性进行论证,对项目的技术方案、费用预算都要合理规划。2. 招标部门经理室对项目实行阶段进行宏观把握,在项目立项后对项目是否招投标进行决策。招标后对合同的签订、支付进行洽谈,并由其添加入合同库。3. 物资部门物资部门对项目实行中的人力资源与实物资源进行合理安排,随时负责对实物的出入库进行管理。4. 安监部及监理公司安监部对每个

33、项目的质量进行严格把关,根据项目的计划编制,控制每个计划的安全实施。4.5 总体模块分析总体模块如图4.2所示:图4.2 总体模块分析系统整体分为八大模块,立项审批管理模块,招标管理模块,合同管理模块,进度成本管理模块,资源管理模块,质量管理模块,知识模块,用户登陆模块等。1、 规划管理规划管理是指项目的规划管理,包括规划项目登记、规划项目查询、规划项目控制、项目的立项申请、立项审批、立项登记等功能。规划项目可设置技术方案、资金规模、时间进度等几个属性,以供项目立项管理作为审批的依据。2、 招标管理 招标管理指项目招标的过程管理包括招标通知书的下达、开标过程记录、竞标过程记录、下达中标通知书等

34、记录的增删改查。3、 合同管理 合同管理是指项目的主管方与项目承担方达成合作意向后涉及到的合同签订、支付、查询等管理。4、 资源管理 项目执行过程中的资源管理,主要指人员、设备和材料。 项目管理中,需要分配资源来开展具体的工作,以便完成项目中的任务。一个资源可以是单个的人或一台设备,系统可 以将资源分配给任何任务,并可随时更改工作分配。 在项目资源管理中,可提供人力资源、实物资源的管理。5、 进度成本管理 此子系统分为计划编制、项目信息管理、进度跟踪等。6、 质量管理 项目执行实施中,每个计划质量是否得到保证成为衡量项目是否成功的重要标志。在这一模块中实现对项目每一计划的质量评价及验收管理。7

35、、 知识管理 知识管理正是要解决资源、知识浪费的现象,整合企业所有可以整合的知识,让所有的人员充分共享全公司的知识,使全公司的人员的知识水平得到整体提高,从而增强公司在市场中的竞争力。主要包括成果管理、文档管理。8、 用户登陆管理 公司的不同部门各司其职,对不同的模块进行管理、修改,设置不同的权限,确保每个环节的有条不紊地执行。湖南师范大学本科毕业论文第五章 系统实现5.1 系统实现原则本系统设计遵循结构化设计原则:1. 模块独立性、适度性原则模块独立的概念是模块化、抽象、信息隐蔽和局部化概念的直接结果。模块独立性是通过指定具有单一功能并且和其它模块没有过多联系的模块来实现的,模块独立性是由内

36、聚性和偶合性两个定性指标来度量的。内聚性是度量一个模块功能强度的一个相对指标;偶合性是用来度量模块之间的相互联系的程度。模块过大时,模块的可理解性会迅速下降。另外对过大的模块分解时,也不应降低模块的独立性。2. 模块结果可预测原则如果一个模块可以当作一个黑箱,即只要输入的数据相同就产生同样的输出,这个模块的功能就是可以预测的。3. 结构化程序编码原则系统实现遵循结构化程序设计的思想,为了确保每个模块的逻辑清晰,尽量使各个模块使用单入口,单出口和顺序、选择和循环三种基本控制结构。4. 事件驱动原则传统程序中,人机交互采用顺序流程式,即程序运行到某个阶段等待用户的信息输入。而本系统则采取事件驱动的

37、随机流程方式,即:程序以响应用户事件为主,围绕处理用户事件而展开,充分利用IE的特点,随时等候处理用户在不同时候对系统的需求,返回人性化界面。5. 良好的程序编写风格为了提高程序的可读性和易维护性,关键是使程序结构简单清晰,因此在程序编写过程中应保持良好的程序设计风格。主要在以下方面体现:(1) 采用序言性和描述性两种注释对程序进行解释。(2) 变量说明尽量使其具有实际意义。(3) 程序语句构造简单直接,直接反映意图。5.2 系统数据库连接JDBC技术是Java DataBase Connectivity的缩写,它是SUN公司提供的一种支持基本SQL功能的通用的应用程序接口(Applicati

38、on Programming Interface)。它由一组用Java语言编写的类和接口组成。通过这些类和接口,程序开发人员可以在Java语言中方便地建立与数据库的链接,通过执行相应SQL语句,完成对不同数据库的访问。因此,开发人员使用JDBC API可以不必编写一个应用程序来访问Sybase数据库,又另外编写一个应用程序去访问Oracle数据库,再写一个应用程序访问Microsoft的SQL Server。不但如此,使用Java语言编写的应用程序可以在任何支持Java的平台上运行,不必在不同的平台上开发不同的应用程序。简单地说,JDBC能完成下列三件事:1. 同一个数据库建立连接;2. 向数

39、据库建立连接;3. 处理数据库返回的结果。JDBC是一种通用低层的应用程序编程接口,它在不同的数据库功能模块的层次上提供一个统一的用户界面。说JDBC是一处低级的API,是指它直接调用SQL命令,它比其他的一些数据库连接API要容易使用些,但它有同样可以作为更高级的,用户办面更友好的API或开发工具基础。很多可视化的Java开发工具,如Visual Age For Java、Visual Caf、J+等都提供了基于JDBC的更面向用户的类和包,直接将关系数据库的表或视图映射为Java类,程序员通过可视化工具直接对Java对象进行操作,而真正需要的SQL调用则根据程序员发出的对对象的各种属性、方

40、法的操作来自动产生。另一种使用JDBC API 的方式为,用户程序可以提供一个界面(如菜单等)让用户选择对数据库进行的操作,选中一个任务后,提示用户输入一些必要的信息,然后根据用户的输入产生相应的SQL命令以及Java程序。通过这处方式,用户可以完成对数据库的操作,即使他并不了解SQL语法以及JDBC编程。数据库访问的三层结构如图5.1所示,浏览器端程序要访问数据库,首先通过中间件,然后由中间件对数据库操作权限进行认证,认证通过才能对数据库进行操作。图5.1 使用中间件的数据库访问三层结构用户对数据库的存取权限认证是中间件中完成,对数据库的查询、插入、更新和删除操作等都封装在中间件中,该中间件

41、位于服务器端,中间件对数据库进行操作后,再将处理结果通过Web服务器返回到浏览器端用户。这样,在用户端输入的用户名和密码,可以通过加密算法进行加密后在网络上传输,在中间件中进行解密认证,然后再进行数据库的存取操作,数据库存取权限的用户名和密码出现在位于服务器端的中间件中,这样就更加安全。本系统采用的正是这样的三层结构的数据库访问模式。在三层模型中,命令将被发送到服务的”中间层”,而”中间层”将SQL语句发送到数据库。数据库处理SQL语句并将结果返回”中间层”,然后”中间层”将它们返回用户。其模型如图5.2所示。图5.2 JDBC的三层模型因为”中间层”可以进行对访问的控制并协同数据库的更新,并

42、且可以使用一个易用的高层API,这个API可以由“中间层”进行转换,转换成低层的调用。所以在许多种情况下,三层模型可以提供更好的性能,本系统中所采用的就是此种模型。JDBC是JAVA应用程序与数据库的沟通桥梁。它提供了三项服务功能:一、与数据库建立连接。二、将SQL语句传递给数据库。三、从数据库取得SQL语句的执行结果。当JDBC要与数据库建立连接前,首先,它必须先取得连接此数据库的JDBC驱动程序,Class.forName()即是在执行此项工作。建立数据库连接的第一步骤就是将JDBC驱动程序的类载入至JVM(Java VirtualL Machine)中,本系统中利用java.lang.C

43、lass类内的forName()静态函数依据指定的类名称,将JDBC驱动程序载入进来。完成载入驱动程序的步骤后,必须使用java.sal.DriverManager类所提供的getConnection()静态函数,取得与数据库间的连接对象。此连接对象的类类型为java.sal.Connection,必须通过它才能将SQL指令传递给数据库,而执行结果也需要通过连接对象来取得。当取得连接对象后,还必须取得Statement对象才能对数据库执行SQL指令。Statement主要实现两个功能:执行SQL语句以及取得执行结果。在java.sql.Statement的sql对象中执行查询或修改命令的函数后

44、传回的是一个ResultSet 对象,这个对象提供了一个存取SQL执行结果的管道,以便通过它将表格数据从数据库中取出。每个Statement对象只能产生一个ResultSet 对象。数据库连接如图5.3所示:图5.3 数据库的连接处理数据库的连接处理具体实现如下:/建立JDBCODBC桥sun.jdbc.odbc.JdbcOdbcDriver;/桥建立不成功时的错误处理catch(ClassNotFoundException event)/建立与数据库的连接,并发送SQL查询语句,将结果保存到rs对象中Con=建立JDBCODBC桥Sql=SQL查询语句执行查询Rs=返回结果/SQL出错处理

45、catch(SQLException e1)5.3 系统模块设计5.3.1 资源管理资源管理完成人力资源管理、实物资源管理、资源查询三个子功能。它主要有三个功能处理页面,根据其项目需要实现人力资源,实物资源的添加、删除、修改功能,及资源进行分类查询。资源管理模块主要涉及到dengji表及zhiyan表,其表设计参照表5.1和表5.2。表5.1 dengji表列名数据类型长度允许空说明XmbhChar10非空项目编号XmmcChar50非空项目名称XmjlChar8非空项目经理TzeFloat8非空投资额YhmcChr8非空用户名称yhdzChar50非空用户地址LxdhChar13非空联系电话

46、XmkssjTime12非空项目开始时间XmwcsjTime12非空项目完成时间ZbfChar10非空招标否JsfaText16非空技术方案SpChar2允许空审批YsChar2允许空验收NoreasonText16允许空备注表5.2 zhiyan表列名数据类型长度允许空说明XmmcChar50非空项目名称XmjlChar8非空项目经理SjbmfzrChar8非空设计部门负责人ZbbmfzrChar8非空招标部门负责人WzbmfzrChar8非空物资部门负责人AjbmfzrChar8非空安监部门负责人人力资源管理模块其基本流程图如5.4所示:图5.4 人力资源管理流程图人力资源管理模块页面如图5.5所示:图5.5 人力资源管理界面项目名称的下拉列表列出所有的项目名,供用户选定,列表从dejing表中读出,以保证数据的完整性及约束。在各部门负责人文本框中输入负责该部门的人员姓名,按提交按钮就可以将输入的信息存入zhiyan表中,供所有用户查询所用。1. 实物资源管理模块其基本流程图如5.6所示:图5.6 实物资源管理流程图人力资源管理模块页面如图5.7所示:图5.7 实物资源管理界面和人力资源管理一样,用户从dengji表中选择项目后,在文本框中输入该项目的实物资源信息,按提交按钮就可以

展开阅读全文
相关资源
相关搜索
资源标签

当前位置:首页 > 学术论文 > 毕业设计

版权声明:以上文章中所选用的图片及文字来源于网络以及用户投稿,由于未联系到知识产权人或未发现有关知识产权的登记,如有知识产权人并不愿意我们使用,如有侵权请立即联系:2622162128@qq.com ,我们立即下架或删除。

Copyright© 2022-2024 www.wodocx.com ,All Rights Reserved |陕ICP备19002583号-1 

陕公网安备 61072602000132号     违法和不良信息举报:0916-4228922