Jsp课程设计文档样文2.docx

上传人:b****5 文档编号:5024402 上传时间:2022-12-12 格式:DOCX 页数:59 大小:676.95KB
下载 相关 举报
Jsp课程设计文档样文2.docx_第1页
第1页 / 共59页
Jsp课程设计文档样文2.docx_第2页
第2页 / 共59页
Jsp课程设计文档样文2.docx_第3页
第3页 / 共59页
Jsp课程设计文档样文2.docx_第4页
第4页 / 共59页
Jsp课程设计文档样文2.docx_第5页
第5页 / 共59页
点击查看更多>>
下载资源
资源描述

Jsp课程设计文档样文2.docx

《Jsp课程设计文档样文2.docx》由会员分享,可在线阅读,更多相关《Jsp课程设计文档样文2.docx(59页珍藏版)》请在冰豆网上搜索。

Jsp课程设计文档样文2.docx

Jsp课程设计文档样文2

 

Jsp网络应用开发

课程设计(论文)说明书

 

题目:

 

学生姓名:

院系:

电子信息学院

专业:

软件外包服务

学号:

指导教师:

陶国喜

摘要

随着水利水电项目的增多,加强对水利水电工程的管理显得尤为重要。

水利水电工程管理系统能够给水利水电工程管理带来诸多的便利。

本文论述了基于B/S架构的水利水电管理系统的一个模块——进度数据管理。

对进度数据管理,分为5个功能子模块:

工序数据录入,工程数据录入,工序数据列表,月工程量总表,月工程量祥表。

前两个模块承担着数据输入和数据处理的任务,后三个模块用于按照一定的要求从数据库中读取数据并且显示给用户。

本文探讨了基于B/S架构的水利水电工程进度数据管理中的难点和关键技术,研究其解决方案并且编程实现了工序的最早开始时间、最早结束时间、最晚开始时间和最晚结束时间的计算,在理论和方法上都具有一定的创新。

 

关键词:

水利水电工程;B/S架构;数据管理;最早开始时间;最早结束时间;最晚开始时间;最晚结束时间

 

第一章绪论…………………………………………………1

1.1课题背景和意义………………………………………………1

1.2课题的研究内容………………………………………………1

1.3本论文的创新点………………………………………………2

1.4论文的结构图…………………………………………………2

第二章技术背景……………………………………………3

2.1Dreamweaver网页制作技术…………………………………3

2.2JavaScript网页交互技术……………………………………3

2.2JSP动态网页制作技术………………………………………5

2.2.1主要服务端脚本语言简介………………………………5

2.2.2JSP的优点…………………………………………………6

2.3Oracle数据库…………………………………………………7

2.4MVC架构……………………………………………………7

第三章需求分析……………………………………………9

3.1本模块在项目中的作用以及和其他模块的关系…………9

3.1.1本模块在总体项目中的位置……………………………9

3.1.2本模块的功能……………………………………………9

3.2总体需求……………………………………………………10

3.2.1外观需求………………………………………………10

3.2.2功能需求………………………………………………10

3.2.3安全需求………………………………………………10

3.3功能模块图…………………………………………………10

3.4功能模块详细分述…………………………………………11

3.4.1工序数据列表……………………………………………11

3.4.2工序数据录入…………………………………………12

3.4.3月工程量总表……………………………………………13

3.4.4月工程量详表…………………………………………14

3.4.5工程数据录入…………………………………………15

第四章模块设计与实现……………………………………17

4.1数据库设计…………………………………………………17

4.2数据的输出和显示…………………………………………19

4.2.1设计的总思路………………………………………19

4.2.2工序数据列表的设计…………………………………20

4.2.3月工程量总表的设计…………………………………20

4.2.4月工程量详表的设计………………………………21

4.3数据输入和更新……………………………………………22

4.3.1工序之间的树型结构……………………………………22

4.3.2叶子工序之间的网络结构………………………………23

4.3.3工序数据的录入和更新的设计…………………………24

4.3.4工程量数据的录入和更新的设计………………………27

4.4数据查找……………………………………………………28

4.4.1对工序数据列表的查找…………………………………28

4.4.2对月工程量详表的查找…………………………………28

4.5数据库操作中的事务处理…………………………………29

4.5.1事务的简介………………………………………………29

4.5.2事务的应用………………………………………………30

4.6权限控制……………………………………………………31

第五章总结和展望…………………………………………33

5.1总结…………………………………………………………33

5.2存在的问题和可能的改进方法……………………………33

参考文献………………………………………………………35

外文资料………………………………………………………36

中文翻译………………………………………………………49

致谢………………………………………………………60

第一章绪论

1.1课题背景和意义

从2003年至今,我国的电力供应一直处于紧张的状态。

为了应对电力紧张的局面,各种电力项目纷纷上马。

水力发电作为一种清洁的发电方式受到了重视,于是水利水电的工程项目在全国各的兴建。

为了实现水利水电工程项目的顺利进行,在工程项目实施的过程中,必须对工程项目进行工程项目管理。

工程项目管理的目标包括成本、进度、质量、安全和文明施工。

成本、进度、质量是工程项目管理的基本目标,安全和文明施工是实现基本目标的保障目标和附加目标。

目标应该用明确的数量表示以便于检查、控制和考核。

进度目标反映工程项目的完工期限,它是工程项目管理十分重要的向题。

加快工程进度,缩短工程工期,是投资者最关心的问题。

因为它与投资者的经济效益有直接的密切关系[7]。

为了更好的实施工程项目的管理,就需要方便、快捷、直观、安全的管理方式。

一个优良的工程项目计算机管理系统就能很好地满足工程项目管理的需要,于是一些专门针对水利水电的管理软件就应运而生了。

然而,传统的管理软件都采用客户端/服务段架构(即C/S架构),它的主要优势在于C/S架构的管理系统一般反应速度会比较快。

但是它又有很大的缺点:

其一,管理不方便。

要想进入管理系统对其进行操作,用户的计算机上必须安装有客户端才行。

因此,用户只能在固定的计算机上进行操作,大大限制了操作的灵活性,给管理带来诸多不便。

其二,增加开发工作量。

C/S架构的软件客户端和服务端都要开发,而且在后续的维护中不仅要对服务端进行维护,而且要保证每台计算机上的客户端是最新的版本。

其三,配置困难,操作困难。

C/S架构的客户端是由程序员为进行管理而开发的,并不是用户事先就熟悉软件,因此,用户在使用之前需要请专门的人员来配置并且还要对用户进行培训后,才能操作软件。

基于对C/S架构的诸多缺点的考虑,我们在开发水利水电工程管理系统的时候选用了B/S架构。

我们开发出来的管理系统具有界面友好、交互性强、对客户端计算机要求低、可移动办公的特点。

可以全面满足水利水电工程的业主、承包商、监理单位的需要。

有利于加强水利水电工程的工程项目的管理,更好的实现工程项目的目标。

1.2课题的研究内容

课题是水利水电工程管理系统开发项目的一部分,采用B/S架构,服务器使用Tomcat,数据库采用Oracle,前台页面为JSP页面,主程序用Java来开发。

课题所涉及的模块是对水利水电工程管理系统中的进度数据进行管理。

课题的主要研究内容是:

●数据输入:

为用户提供友好的输入界面,并且通过程序检验保证用户输入的数据的合法性。

●数据处理:

根据进度计划的网络图原理,自动生成工序的最早开始时间,最早结束时间,最晚开始时间,最晚结束时间,为单双代号网络图提供数据来源。

●数据输出:

用列表显示各项工序数据,每月工序工程总量,每个月各工序的详细工程量。

1.3本论文的创新点

传统的进度分析软件的计划进度数据都是用由用户输入。

本课题中计划进度数据将根据工程进度的网络关系原理自动生成。

大大减轻了用户的数据计算量和输入量,而且保证了数据的正确性。

1.4论文的结构图

从图1-1的论文结构图中可以看到:

本文围绕着水利水电工程的进度数据管理的设计和实现展开的。

本文按照分析,设计,实现的原则展开论述的。

主要阐述了水利水电工程的进度数据地数据输入,数据处理,数据输出。

第一章绪论。

对本文的课题研究内容,意义,背景等从全局上进行把握,让读者对本文有一个初步的了解。

第二章技术背景。

对课题研究中所涉及到的计算机技术进行简单的介绍,让读者对本文所用的技术有个大概的了解。

进行简单的介绍,让读者对本文所用的技术有个大概的了解。

第三章需求分析。

对本课题的涉及的模块进行需求分析为下一步的详细设计和编码提供指导。

本章对每一个功能模块对进行了需求分析,力求做到全面。

为下一步的详细设计和编码提供指导。

本章对每一个功能模块对进行了需求分析,力求做到全面。

第四章模块设计和实现。

本章是本论文的主要章节,要根据需求分析后的要求进行设计。

本章先对数据库进行设计,然后围绕数据的输入,处理,输出进行叙述。

第五章总结和展望。

本章对全文和课题研究过程中的经验进行总结,并且提出一些课题研究过程中的不足和改进方法。

第二章技术背景

本课题所涉及的项目是基于MVC架构开发的。

前期的静态网页界面是采取流行的Dreamweaver来制作的,在前台用JavaScript与用户进行交互。

动态页面采用JSP技术、使用JBuider[14]进行开发,数据库采用Oracle数据库,服务端用Tomcat服务器。

下面分别叙述。

2.1Dreamweaver网页制作技术

在课题的研究中,前期制作静态页面的开发工具主要就是Dreamweaver,这是因为Dreamweaver具有很多开发上的优点,它能够使页面开发更加的方便,快速。

下面将对Dreamweaver进行简单的介绍。

Dreamweaver和Flash、Fireworks都是Macromedia公司的杰出作品,被广大用户称为“网页三剑客”。

Dreamweaver是在技术上全面领先、在功能上全面超前的网页编辑软件。

1.Dreamweaver是一种可视化的网页开发工具,它具有强大的可视化辅助设计功能,能够帮助用户方便的设计出他自己需要的页面。

Dreamweaver系列具有界面简单的特点,充分体现出“面向对象”的概念,采用了不同于其他编辑软件的独特的浮动对象设计,通过各种浮动对象将诸多常用功能有序地集成,给编辑带来很大的方便。

而且Dreamweaver系列中都对鼠标的功能进行了强化,鼠标右键几乎集成了所有的控制命令。

通过模板、库、行为等特有功能为用户免去了网页设计外的诸多麻烦[1]。

2.Dreamweaver采用了模块化的结构,使用JavaScript、XML甚至C语言都可以对其进行扩展。

内设丰富的JavaScript函数,用户还可以白己动手制作对象、命令、行为等。

对于不熟悉JavaScript语言的初级用户,Dreamweaver也提供了足够的行为,使用户利用这些以及时间轴可以达到同样的表现效果。

3.Dreamweaver支持跨浏览器的DynamicHTML和级联式样式表,所以使用Dreamweaver可以制作出跨浏览器的网页,而无需担心浏览器的兼容性问题。

4.Dreamweaver还有许多独具特色的设计理念。

像行为(Behaviors)、时间轴(Timeline)、资产库(Assets)等,无需手写任何代码,就可以让使用者能够轻松创建动态页面效果:

另外,Dreamweaver还具有高度的自定义和扩展功能,允许用户定制自己的命令、对象、菜单以及快捷键等。

正是由于Dreamweaver包含以上的特色,才使得Dreamweaver凌驾于其他网页编辑软件之上。

所以制作和编辑网页的人当然要首选Dreamweaver。

2.2JavaScript网页交互技术

在本课题的项目中JavaScript是被广为使用的脚本语。

JavaScript是Netscape公司开发的用于扩展基本HTML的功能,使用大量cgi脚本来处理表格信息并向用户页面中加入动态信息。

JavaScript的逻辑运行主要是在客户端而不是在服务端。

在JavaScript这样的用户端脚本语言语言出现之前,传统的数据提交和验证工作均由用户端浏览器通过网络传输到服务器上进行。

如果数据量很大,这对于网络和服务器的资源来说实在是一种无形的浪费。

而使用JavaScript就可以在客户端进行数据验证。

JavaScript可以方便地操纵各种浏览器的对象,可以使用JavaScript来控制浏览器的外观,状态甚至运行方式,可以根据用户的需要“定制”浏览器,从而使网页更加友好。

JavaScript可以使多种任务仅在客户端就可以完成而不需要网络和服务器的参与,从而支持分布式的运算和处理。

它具有以下这些特点:

1.JavaScript可以嵌入HTML。

JavaScript代码常常被嵌入HTML文档之中并且在其中执行,大多数JavaScript对象拥有它们代表的HTMT标签,所以代码被包含在语言的核心客户端层之中。

JavaScript以一种称为web应用程序框架的方式使用HTMT。

它还通过向HTML提供事件并且允许这种事件驱动代码在HTML之中运行来扩展HTML的正常功能。

2.JavaScript是一种解释性语言JavaScript本身是—种脚本语言,不是一种工具。

实际运行所写的JavaScript代码的软件是环境中的解释引擎——无论它是Netscape的Navigator还是Microsoft的InternetExplorer。

当被包含于HTML文档中时,JavaScript依赖于浏览器来文持它。

3.JavaScript不是Java。

首先,尽管JavaScript被牢牢地集成到HTML之中,一个Java小程序只是简单地通过HTML标签链接到HTML文档上,这个小程序自身被存入从服务器上下载的另一个文件。

其次,有着强类型、真正而向对象以及一个编译器Java是一种更健壮和完整的语言。

总之Java是用来做小程序和应用程序JavaScript主要是用来做脚本。

4.JavaScript是多功能的并且可以被用于多种环境上下文中。

为基于Web的问题提供解决方法。

它具有以下功能:

●通过特殊效果、动画及标题栏增强与活化HTML页面。

●在不向服务器进行任何传送的情况下有效地校验数据。

●用作客户/服务器Web应用程序的构建。

●开发客户端应用程序。

●用作HTML对象、Java小程序、ActiveX控件和Netscape插件间的粘合剂。

●用作web服务器的扩展。

●不使用CGI可以仿真数据库连接[2]。

因此,使用JavaScript技术可以减轻服务端的压力,使网页和用户的交互更加流畅。

2.3JSP动态网页制作技术

在本课题中,JSP技术是使用最多的技术,它用于动态网页生成,数据校验,数据处理,数据库存取。

整个项目的开发也是基于JBuilder平台的。

2.3.1主要服务端脚本语言简介

目前,最常用的三种动态网页语言有ASP(ActiveServerPages),JSP(JavaServerPages),PHP(HypertextPreprocessor)。

1.ASP

ASP全名ActiveServerPages,是一个WEB服务器端的开发环境,利用它可以产生和执行动态的、互动的、高性能的WEB服务应用程序。

ASP采用脚本语言VBScript(或JavaScript)作为自己的开发语言[13]。

ASP的技术特点:

●使用VBScript、JavaScript等简单易懂的脚本语言,结合HTML代码,即可快速地完成网站的应用程序。

●无须compile编译,容易编写,可在服务器端直接执行。

●与浏览器无关(BrowserIndependence),客户端只要使用可执行HTML代码的浏览器,即可浏览ActiveServerPages所设计的网页内容。

ActiveServerPages所使用的脚本语言(VBScript、JavaScript)均在WEB服务器端执行,客户端的浏览器不需要能够执行这些脚本语言。

●ActiveServerPages能与任何ActiveXscripting语言兼容。

除了可使用VBScript或JavaScript语言来设计外,还通过plug-in的方式,使用由第三方所提供的其它脚本语言,譬如REXX、Perl、Tcl等。

脚本引擎是处理脚本程序的COM(ComponentObjectModel)对象。

●可使用服务器端的脚本来产生客户端的脚本[13]。

●ActiveXServerComponents(ActiveX服务器组件)具有无限可扩充性。

可以使用VisualBasic、Java、VisualC++、COBOL等程序设计语言来编写你所需要的ActiveXServerComponent[13]。

2.PHP

PHP是一种跨平台的服务器端的嵌入式脚本语言。

它大量地借用C,Java和Perl语言的语法,并耦合PHP自己的特性,使WEB开发者能够快速地写出动态产生页面。

它支持目前绝大多数数据库。

还有一点,PHP是完全免费的,不用花钱,你可以从PHP官方站点(http:

//)自由下载。

而且你可以不受限制地获得源码,甚至可以从中加进你自己需要的特色[12]。

3.JSP

在Sun正式发布JSP(JavaServerPages)之后,这种新的Web应用开发技术很快引起了人们的关注。

JSP为创建高度动态的Web应用提供了一个独特的开发环境。

在JSP环境下,HTML代码主要负责描述信息的显示样式,而程序代码则用来描述处理逻辑。

普通的HTML页面只依赖于Web服务器,JSP页面需要附加的语言引擎分析和执行程序代码。

程序代码的执行结果被重新嵌入到HTML代码中,然后一起发送给浏览器[11]。

JSP是使用Java的面向Web服务器的技术,客户端浏览器不需要任何附加的软件支持。

在JSP下,代码被编译成Servlet并由Java虚拟机执行,这种编译操作仅在对JSP页面的第一次请求时发生。

2.3.2JSP的优点

1.移植性

JSP的重要特点之一就是它由Java制成、是Java应用程序的一种。

Java最鲜明的特点之一就是工作平台具有独立性。

不过JSP在何种平台种编写,只要在服务器中有JSPContainer就可以使用原先制成的程序来运行。

正是因为它是由Java制成的程序,所以JSP制成的Web应用程序可以在几乎任何Web服务器中运行,无需改什么。

这是Java系列产品共同的优点。

即,JSP开发者只需制作JSP程序,无需考虑其硬件构成的,运行体系是什么[3]。

2.动态和静态相结合

在JSP之前,SUM公司推出了JavaServlet来进行动态网页的设计,但是利用JavaServlet制作网页是由它自身无法掩盖的缺点,即一切内容必须在Java代码中制作。

所以管理网络的管理人员也必须熟悉JavaServlet,或者说即使是很小的问题也得有熟悉JavaServlet的人员才能解决[3]。

为了弥补JavaServlet在工作中的不足,Sun公司研制开发了JSP。

它不仅继承了JavaServlet的各项优秀功能,而且具备了将制作的静态内容部分和动态内容部分进行明确区分的特征。

程序开发者可以利用JavaBeans将内部运算部分隐藏于 JSP代码中。

3.编译后执行,执行效率高

JSP的另一个重要特点就是它不向ASP那样是在页面请求的时候才进行解释执行的。

在第一次调用JSP页面的时候,服务器程序(如Tomcat)就会把JSP编译成JavaServlet并由虚拟机执行。

在以后的JSP页面调用中,将不再进行编译操作而是直接调用已经编译好的JavaServlet执行。

这种依次编译,随时运行的方式大大提高了JSP的执行效率[3]。

4.可以重复使用的JavaBeans和标记库

JavaBeans是JSP不可缺少的重要组成部分,JSP程序通道JavaBeans进行内部的运算。

在JSP中我们可以按照JavaBeans的定义使用它。

我们把Java里的类按照JavaBeans规则制成的类成为JavaBeans规则,这些类不但可以适用于JSP,也可以适用于其他Java应用程序中。

这就是JavaBeans的可重复使用性,它使得Java代码能够被重复利用,加速JSP程序的开发[3]。

2.4Oracle数据库

Oracle是Internet计算模式的倡导者之一,在该模式下,组织者为分布式应用配置了万维网。

Internet是发布应用的理想基础设施。

在给定的组件为基础的模型中,Internet是将分散应用集成起来的理想场所。

Oracle是一个通用的数据库系统,Oracle具有完整的数据管理功能,这些功能包括存储大量数据、定义和操纵数据、并发控制、完整性控制、故障恢复、与高级语言接口等。

Oracle还是一个分布式数据库系统,支持各种分布式功能,特别是支持各种Internet处理。

作为一个应用开发环境,Oracle提供了一套界面友好、功能齐全的数据库开发工具,使用户拥有一个良好的应用开发环境。

Oracle使用PL/SQL语言执行各种操作,具有可开放性、可移植性、灵活性等特点。

特别是,在Oracle9i中,支持面向对象的功能,支持类、方法和属性等概念,使得Oracle产品成为了一种对象—关系型数据库系统[4]。

Oracle是由三层模型构成,构成此模型的三层为:

●客户层有时称为表达层,既显示信息给用户,同时接收输入并处理信息。

●应用层所有的处理都将按系统实现的逻辑在该层进行。

商业规则的加强、数据一致性的检查系统所需的复杂处理都在该层进行。

此层是三层模型中处理事务最多的一层。

●数据层通常称为后端,为满足其他两层的需求而存储信息。

很多情况下,在用户同系统交互时,关系数据库将优化从应用层接收到的以及返回给应用层的信息。

Oracle服务器是一个完善的数据库管理系统。

它存储了大量数据,并且使用户可以快速地访问这些数据。

Oracle服务器允许应用系统之间共享数据,所有数据存放在一个地方并且可供多个应用程序使用。

2.5MVC架构

MVC中的Model(模式)代表的是应用的业务逻辑,这是数据与业务逻辑元件,封装的是数据源和所有基于对这些数据的操作(通过JavaBean,EJB组件实现);View(视图)是应用的表示面,这是表示元件,也称为用户接口元件,封装的是对数据源Model的一种显示,一个模式可以用于多个视图(由JSP页面产生);Controller(控制器)是提供应用的处理过程控制,这是响应用户输入的元件,封装的是外界作用于模型的操作。

控制器将用户接口转化为模式的变化,并定义用户接口对这些事件的响应方法。

用户接口可包括处理多种协议的操作,如HTTP、WAP等(一般是一个Servlet)。

设计模式是成功设计经验的文档化。

它是对被用来在特定场景下解决一般设计问题的类和相互通信的对象的描述。

MVC是一个设计模式,它强制性地使应用程序的输入、处理和输出分开。

MVC应用程序分成三个核心部件:

模型、视图、控制器。

它们各自处理自己的任务,如图2-1所示。

MVC的处理过程:

首先控制器接收用户的请求,并决定应该调用哪个模型来进行处理,然后模型用业务逻辑来处理用户的请求并返回数据,最后控制器用相应的视图格式化模型返

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 高等教育 > 军事

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1