《毕业设计(论文)毕业生论文管理系统.doc》由会员分享,可在线阅读,更多相关《毕业设计(论文)毕业生论文管理系统.doc(70页珍藏版)》请在三一办公上搜索。
1、毕业生论文管理系统专业:计算机科学与技术班级:08T计算机2班姓名: 目 录引 言31 概述51.1课题研究的目的51.2 课题研究的意义51.3 课题研究的背景62 相关技术追踪82.1 应用系统开发语言82.2 应用系统开发工具92.3系统应用数据库102.3.1 SQL Server简介102.3.2系统数据库连接112.4 JSP技术简介182.4.1 JSP简介182.4.2 JSP工作原理182.4.3 JSP体系结构192.4.4 JSP的特点202.5 MVC框架技术213 需求分析233.1 需求分析233.1.1 需求分析的作用233.1.2 需求分析过程233.1.3 需
2、求分析的方法243.2 可行性分析253.2.1可行性分析的意义253.2.2 可行性分析报告263.3系统定义273.4研究方法273.4.1软件工程的定义273.4.2软件工程的模型284 概要设计304.1 OSI模型的介绍304.2 数据库的设计324.3功能模块设计365 详细设计与系统实现375.1 管理员模块设计375.1.1 管理员登录375.1.2 学校教师管理385.1.3 论文信息管理425.1.4 注册学生管理445.1.5互动留言管理475.1.6教师下载管理485.2 教师模块设计495.2.1 论文下载管理495.2.2 修改密码515.3 学生模块设计535.3
3、.1 注册535.3.2 论文信息查看565.3.3 互动交流575.3.4新闻资讯596 系统测试与维护606.1系统测试的原则606.2测试过程及方法616.3本系统测试环境626.5软件的维护63结 论65致 谢66参考文献67摘 要 随着计算机的不断发展和广泛应用以及人们对其认识程度的不断提高,人们的工作效率得到不断的提高。互联网的发展,更是缩短了人们之间的距离,成为了人们生活学习必不可少的一部分。如何充分利用互联网,这是大家共同关心的问题。本文主要介绍了关于毕业生论文管理系统的实现方法,设计规划了毕业生论文管理系统的网页,以互联网的形式将分散的论文进行统一管理。本论文系统地阐述了毕业
4、生论文管理系统的功能及实现。实现了毕业生论文管理系统中的教师用户管理、普通用户管理、论文管理(包括论文的上传和下载)新闻咨询管理、滚动信息管理等功能。本系统界面简单直观,易于操作和使用,交互性强。本系统使用JAVA语言,JSP技术,MVC框架技术, 强大的SQL查询语言实现建立关系数据库,利用其提供的各种面向对象的开发工具,尤其是数据窗口这一能方便而简洁操纵数据库的智能化对象,首先在短时间内建立系统应用原型,然后,对初始原型系统进行需求迭代,不断修正和改进,直到形成满意的可行系统。关键词:毕业生论文管理系统;系统开发;信息管理;Microsoft SQL Server 2000;MyEclip
5、seAbstractAlong with the development and widespread application of computers, and with peoples increasing awareness of them, peoples working efficiency has improved constantly. The development of Internet has shortened the distance between people and making the Internet an indispensable part of peop
6、les life. How to make full use of the Internet is the question of common interest. This paper mainly introduces the way to implement the management system of graduation theses, with design and layout of the homepage for it. A centralized management is taken towards separated papers in the form of in
7、ternet. The paper formulates the functions and implementation of the management system of graduation theses systematically, including teacher subscriber management, ordinary subscriber management, thesis management (including the uploading and downloading of the papers), news consulting management,
8、scrolling message management, etc. The system has a simple and visualized interface with strong interactivity. And it is easy to operate and use. The system uses JAVA, technology of JSP, MVC frame technology, SQL query language to establish the relational database. It applies each kind of object-ori
9、ented development kit it provides, especially the data window with convenience and concision to operate the intellectualized object of the database. First, it establishes the system application prototype in a short time. Then, it carries on the demand iteration to the initial prototype system, revis
10、ing and improving constantly, until a satisfactorily feasible system is formed.Keywords:Management system of graduation theses;System development;Information management;Microsoft SQL Server 2000;MyEclipse引 言撰写毕业论文是检验学生在校学习成果的重要措施,也是提高教学质量的重要环节。大学生在毕业前都必须完成毕业论文的撰写任务。申请学位必须提交相应的学位论文,经答辩通过后,方可取得学位。可以这么
11、说,毕业论文是结束大学学习生活走向社会的一个中介和桥梁。毕业论文是大学生才华的第一次显露,是向祖国和人民所交的一份有份量的答卷,是投身社会主义现代化建设事业的报到书。一篇毕业论文虽然不能全面地反映出一个人的才华,也不一定能对社会直接带来巨大的效益,对专业产生开拓性的影响。实践证明,撰写毕业论文是提高教学质量的重要环节,是保证出好人才的重要措施。 通过撰写毕业论文,提高写作水平是干部队伍“四化”建设的需要。党中央要求,为了适应现代化建设的需要,领导班子成员应当逐步实现“革命化、年轻化、知识化、专业化”。这个“四化”的要求,也包含了对干部写作能力和写作水平的要求。 提高大学生的写作水平是社会主义物
12、质文明和精神文明建设的需要。在新的历史时期,无论是提高全民族的科学文化水平,掌握现代科技知识和科学管理方法,还是培养社会主义新人,都要求我们的干部具有较高的写作能力。在经济建设中,作为领导人员和机关的办事人员,要写指示、通知、总结、调查报告等应用文;要写说明书、广告、解说词等说明文;还要写科学论文、经济评论等议论文。在当今信息社会中,信息对于加快经济发展速度,取得良好的经济效益发挥着愈来愈大的作用。写作是以语言文字为信号,是传达信息的方式。信息的来源、信息的收集、信息的储存、整理、传播等等都离不开写作。毕业生论文管理系统是一个对高等教育单位有着重大作用的信息管理系统,它的内容对于学校的管理者来
13、说都是至关重要的,所以毕业论文管理系统应该能够为用户提供充足的信息和快捷的查询手段。但一直以来人们使用传统人工的方式管理毕业论文相关文件,这种管理方式存在着许多缺点,如效率低、保密性差,另外时间一长,将产生大量文件和数据,这对于查找、更新和维护都带来了不少的困难。随着科学技术的不断提高,计算机科学日渐成熟。其强大的功能已为人们深刻认识,它已经进入人类社会的各个领域并发挥着重要作用。作为计算机应用的一部分,使用计算机对学生毕业生论文信息进行管理,有手工管理所无法比拟的优点。例如:检索迅速、查找方便、可靠性高、存储量大、保密性好,寿命长、成本低等。这些优点能极大地提高毕业生论文管理的效率,也是教育
14、部门的科学化,正规化管理,与世界接轨的重要条件。因此,开发 一套管理软件成为很有必要的事情。1 概述1.1课题研究的目的毕业论文是来检验和锻炼学生的综合能力和素质的,它是决定我们大学四年成败的标尺。毕业论文通常都是一个指导教师来指导几位学生来完成的,由于毕业论文涉及内容广泛,专业知识水平高,所以指导老师几乎都是手工的或分离式的报表管理。这样论文管理起来就相当复杂,容易出差错。而且现今我国还有许多的学校采用传统的纸介质的管理模式,还主要依赖于人力手工的操作,并归档编号保存,事后如需查阅,则要人工从浩瀚的资料中查找,既费时费力又容易出错。作为保存资料的介质-纸张,又有容易被火烧毁,易被虫蛀,易发霉
15、变质等等缺点。这就急需有一套全新的高效的管理系统,由计算机来代替手工完成论文的管理。21世纪以来,计算机技术的迅猛发展,特别是随着网络技术的出现标志着信息时代已经来临。信息化浪潮、网络革命在给社会带来冲击的同时,也使论文管理受到了强烈的冲击,管理传统的管理方式已不能适应人们对日益增长的信息的需求,建设网络系统,是现代化建设的客观要求。建设以计算机为核心的信息网络,实现信息管理的自动化,更好地为工作服务。1.2 课题研究的意义计算机已经成为我们学习和工作的得力助手:今天,计算机的价格已经十分低廉,性能却有了长足的进步。它已经被应用于许多领域,计算机之所以如此流行的原因主要有以下几个方面:首先,计
16、算机可以代替人工进行许多繁杂的劳动;其次,计算机可以节省许多资源;第三,计算机可以大大的提高人们的工作效率;第四,计算机可以使敏感论文更加安全,等等。本系统就是为了管理好论文信息而设计的。随着人类社会的发展,人类对知识的需求也不断地增长。论文就自然而然地在人们的生活中占据了一定的位置,如何科学地管理论文不但关系到读者求知的方便程度,也关系到论文的发展,因此,开发一套完善的毕业生论文管理系统就成不可少了。1.3 课题研究的背景 随着在校大学生人数的不断增加,教务系统的数据量也不断的上涨。根据调查得知,以前信息管理的主要方式缺乏系统,规范的信息管理手段。尽管有的论文有计算机,但是尚未用于信息管理,
17、没有发挥它的效力,资源闲置比较突出,这就是管理信息系统的开发的基本环境。 数据处理手工操作,工作量大,出错率高,出错后不易更改。论文采取手工方式对论文借阅情况进行人工管理,由于信息比较多,论文借阅信息的管理工作混乱而又复杂;一般借阅情况是记录在借书证上,论文的数目和内容记录在文件中,论文的工作人员和管理员也只是当时对它比较清楚,时间一长,如再要进行查询,就得在众多的资料中翻阅、查找了,造成查询费时、费力。如要对很长时间以前的论文进行更改就更加困难了。 基于这此问题,我认为有必要建立一个毕业生论文管理系统,使论文管理工作规范化,系统化,程序化,避免论文管理的随意性,提高信息处理的速度和准确性,能
18、够及时、准确、有效的查询和修改论文情况。针对论文管理这一环节,本系统从学生网上查询论文以及管理员的论文发布两个大方面进行了设计,基本实现了学生的在线信息查询、查看功能以及管理员对论文信息发布的管理等功能。 现在,我们已经进入到Internet时代了,论文管理也要随之更新,随着无纸化办公的一步步实现,让计算机来管理论文信息是现在各个高校都在积极进行的工作之一,也是高校教学管理工作的重要内容之一。毕业生论文管理系统必然会在以后的信息管理系统中大放异彩。2 相关技术追踪2.1 应用系统开发语言Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言1,是由Sun Microsystems公司于1
19、995年5月推出的Java程序设计语言和Java平台(即JavaSE, JavaEE, JavaME)的总称。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于个人PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。在全球云计算和移动互联网的产业环境下,Java更具备了显著优势和广阔前景。Java 编程语言的风格十分接近C、C+语言。Java是一个纯的面向对象的程序设计语言2,它继承了 C+ 语言面向对象技术的核心,Java舍弃了C +语言中容易引起错误的指针(以引用取代)、运算符重载(operator overloading)、
20、多重继承(以接口取代)等特性,增加了垃圾回收器功能用于回收不再被引用的对象所占据的内存空间,使得程序员不用再为内存管理而担忧。在 Java SE 1.5 版本中,Java 又引入了泛型编程(Generic Programming)、类型安全的枚举、不定长参数和自动装/拆箱等语言特性。Java的主要特点是:Java语言的语法与C语言和C+语言很接近,使得大多数程序员很容易学习和使用Java,Java语言是一个纯的面向对象程序设计语言, Java语言是分布式的,Java的安全检查机制使得Java更具健壮性3,Java通常被用在网络环境中,为此,Java提供了一个安全机制以防恶意代码的攻击,Java
21、语言是体系结构中立的,Java语言是可移植的,Java语言是解释型的,Java是高性能的。与那些解释型的高级脚本语言相比,Java的确是高性能的。事实上,Java的运行速度随着JIT(Just-In-Time)编译器技术的发展越来越接近于C+,Java语言是多线程的,Java语言是动态的。Java语言的设计目标之一是适应于动态变化的环境。Java程序需要的类能够动态地被载入到运行环境,也可以通过网络来载入所需要的类。这也有利于软件的升级。另外,Java中的类有一个运行时刻的表示,能进行运行时刻的类型检查。2.2 应用系统开发工具MyEclipse,是一个十分优秀的用于开发Java, J2EE的
22、Eclipse插件集合,MyEclipse的功能非常强大,支持也十分广泛,尤其是对各种开源产品的支持十分不错。MyEclipse企业级工作平台(MyEclipse Enterprise Workbench ,简称MyEclipse)是对EclipseIDE的扩展,利用它我们可以在数据库和JavaEE的开发、发布以及应用程序服务器的整合方面极大的提高工作效率。它是功能丰富的JavaEE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML,Struts,JSP,CSS,Javascript,Spring,SQL,Hibernate。在结构上,MyEclipse的特征可以被分为7类
23、: (1) JavaEE模型 (2) WEB开发工具 (3) EJB开发工具 (4) 应用程序服务器的连接器 (5) JavaEE项目部署服务 (6) 数据库服务 (7)MyEclipse整合帮助 对于以上每一种功能上的类别,在Eclipse中都有相应的功能部件,并通过一系列的插件来实现它们。MyEclipse结构上的这种模块化,可以让我们在不影响其他模块的情况下,对任一模块进行单独的扩展和升级。 简单而言,MyEclipse是Eclipse的插件,也是一款功能强大的JavaEE集成开发环境,支持代码编写、配置、测试以及除错,MyEclipse6.0以前版本需先安装Eclipse。MyEcli
24、pse6.0以后版本安装时不需安装Eclipse。2.3系统应用数据库2.3.1 SQL Server简介SQL Server 是一个后台数据库管理系统,它功能强大操作简便4,日益为广大数据库用户所喜爱。越来越多的开发工具提供了与SQL Server的接口。SQL Server是一个关系数据库管理系统,它最初是由Microsoft、Sybase和Ashton-Tate三家公司共同开发的。于1988 年推出了第一个OS/2 版本,在Windows NT 推出后,Microsoft与Sybase 在SQL Server 的开发上就分道扬镳了,Microsoft将SQL Server移植到Windo
25、ws NT系统上,专注于开发推广SQL Server的Windows NT版本。SQL Server 2000是Microsoft公司推出的SQL Server数据库管理系统的最新版本,该版本继承了SQL Server 7.0 版本的优点,同时又比它增加了许多更先进的功能、具有使用方便、可伸缩性好与相关软件集成程度高等优点。可跨越从运行Microsoft Windows 98的膝上型电脑到运行Microsoft Windows 2000的大型多处理器的服务器等多种平台使用。MS SQL Server不但可以应用于大中型数据库管理中,建立分布式关系数据库,并且也可以开发桌面数据库。事实上,SQL
26、 Server数据库处理的基本结构,采取关系型数据库模式,尽管如此,相信大家都可以轻易的发现,在SQL Server的数据库处理方式,则是使用面向对象的操作方式与精神,也就是说,SQL Server的所有功能,都可以基于系统已经建立好的一些对象来达成,是相当OO(面向对象)的一个系统结构。SQL Server企业管理器是SQL Server的主要管理工具,它提供了一个遵从 MMC标准的用户界面,使用户得以:定义SQL Server实例组,将个别服务器注册到组中,为每个已注册的服务器配置所有SQL Server选项。在每个已注册的服务器中创建并管理所有SQL Server数据库、对象、登录、用户
27、和权限。在每个已注册的服务器上定义并执行所有SQL Server管理任务。通过唤醒调用SQL查询分析器,交互地设计并测试SQL语句、批处理和脚本。唤醒调用为SQL Server定义的各种向导。2.3.2系统数据库连接JDBC技术是Java DataBase Connectivity的缩写,它是SUN公司提供的一种支持基本SQL功能的通用的应用程序接口(Application Programming Interface)。它由一组用Java语言编写的类和接口组成。通过这些类和接口,程序开发人员可以在Java语言中方便地建立与数据库的链接,通过执行相应SQL语句,完成对不同数据库的访问。因此,开发
28、人员使用JDBC API可以不必编写一个应用程序来访问Sybase数据库,又另外编写一个应用程序去访问Oracle数据库,再写一个应用程序访问Microsoft的SQL Server。不但如此,使用Java语言编写的应用程序可以在任何支持Java的平台上运行,不必在不同的平台上开发不同的应用程序。简单地说,JDBC能完成下列三件事:(1)同一个数据库建立连接;(2)向数据库建立连接;(3)处理数据库返回的结果。JDBC是一种通用低层的应用程序编程接口,它在不同的数据库功能模块的层次上提供一个统一的用户界面。说JDBC是一处低级的API,是指它直接调用SQL命令,它比其他的一些数据库连接API要
29、容易使用些,但它有同样可以作为更高级的,用户办面更友好的API或开发工具基础。很多可视化的Java开发工具,如Visual Age For Java、Visual Caf、J+等都提供了基于JDBC的更面向用户的类和包,直接将关系数据库的表或视图映射为Java类,程序员通过可视化工具直接对Java对象进行操作,而真正需要的SQL调用则根据程序员发出的对对象的各种属性、方法的操作来自动产生。另一种使用JDBC API 的方式为,用户程序可以提供一个界面(如菜单等)让用户选择对数据库进行的操作,选中一个任务后,提示用户输入一些必要的信息,然后根据用户的输入产生相应的SQL命令以及Java程序。通过
30、这处方式,用户可以完成对数据库的操作,即使他并不了解SQL语法以及JDBC编程。数据库访问的三层结构如图1所示,浏览器端程序要访问数据库,首先通过中间件,然后由中间件对数据库操作权限进行认证,认证通过才能对数据库进行操作。图1 使用中间件的数据库访问三层结构图用户对数据库的存取权限认证是中间件中完成,对数据库的查询、插入、更新和删除操作等都封装在中间件中,该中间件位于服务器端,中间件对数据库进行操作后,再将处理结果通过Web服务器返回到浏览器端用户。这样,在用户端输入的用户名和密码,可以通过加密算法进行加密后在网络上传输,在中间件中进行解密认证,然后再进行数据库的存取操作,数据库存取权限的用户
31、名和密码出现在位于服务器端的中间件中,这样就更加安全。本系统采用的正是这样的三层结构的数据库访问模式。在三层模型中,命令将被发送到服务的”中间层”,而”中间层”将SQL语句发送到数据库。数据库处理SQL语句并将结果返回”中间层”,然后”中间层”将它们返回用户。其模型如图2所示。图2 JDBC的三层模型因为“中间层”可以进行对访问的控制并协同数据库的更新,并且可以使用一个易用的高层API,这个API可以由“中间层”进行转换,转换成低层的调用。所以在许多种情况下,三层模型可以提供更好的性能,本系统中所采用的就是此种模型。JDBC是JAVA应用程序与数据库的沟通桥梁。它提供了三项服务功能:一、与数据
32、库建立连接。二、将SQL语句传递给数据库。三、从数据库取得SQL语句的执行结果。当JDBC要与数据库建立连接前,首先,它必须先取得连接此数据库的JDBC驱动程序,Class.forName()即是在执行此项工作。建立数据库连接的第一步骤就是将JDBC驱动程序的类载入至JVM(Java VirtualL Machine)中,本系统中利用java.lang.Class类内的forName()静态函数依据指定的类名称,将JDBC驱动程序载入进来。完成载入驱动程序的步骤后,必须使用java.sal.DriverManager类所提供的getConnection()静态函数,取得与数据库间的连接对象。此
33、连接对象的类类型为java.sal.Connection,必须通过它才能将SQL指令传递给数据库,而执行结果也需要通过连接对象来取得。当取得连接对象后,还必须取得Statement对象才能对数据库执行SQL指令。Statement主要实现两个功能:执行SQL语句以及取得执行结果。在java.sql.Statement的sql对象中执行查询或修改命令的函数后传回的是一个ResultSet 对象,这个对象提供了一个存取SQL执行结果的管道,以便通过它将表格数据从数据库中取出。每个Statement对象只能产生一个ResultSet 对象。数据库连接如图3所示。图3 数据库的连接处理图数据库的连接处
34、理具体实现如下:/建立JDBCODBC桥sun.jdbc.odbc.JdbcOdbcDriver;/桥建立不成功时的错误处理catch(ClassNotFoundException event)/建立与数据库的连接,并发送SQL查询语句,将结果保存到rs对象中Con=建立JDBCODBC桥Sql=SQL查询语句执行查询Rs=返回结果/SQL出错处理 catch(SQLException e1)有了JDBC,向各种关系数据发送SQL语句就是一件很容易的事。换言之,有了JDBC API,就不必为访问Sybase数据库专门写一个程序,为访问Oracle数据库又专门写一个程序,或为访问Informix
35、数据库又编写另一个程序等等,程序员只需用JDBC API写一个程序就够了,它可向相应数据库发送SQL调用。同时,将Java语言和JDBC结合起来使程序员不必为不同的平台编写不同的应用程序,只须写一遍程序就可以让它在任何平台上运行,这也是Java语言“编写一次,处处运行”的优势。Java数据库连接体系结构是用于Java应用程序连接数据库的标准方法。JDBC对Java程序员而言是API,对实现与数据库连接的服务提供商而言是接口模型。作为API,JDBC为程序开发提供标准的接口,并为数据库厂商及第三方中间件厂商实现与数据库的连接提供了标准方法。JDBC使用已有的SQL标准并支持与其它数据库连接标准,
36、如ODBC之间的桥接。JDBC实现了所有这些面向标准的目标并且具有简单、严格类型定义且高性能实现的接口。Java 具有坚固、安全、易于使用、易于理解和可从网络上自动下载等特性,是编写数据库应用程序的杰出语言。所需要的只是 Java应用程序与各种不同数据库之间进行对话的方法。而 JDBC 正是作为此种用途的机制。 JDBC 扩展了 Java 的功能。例如,用 Java 和 JDBC API 可以发布含有 applet 的网页,而该 applet 使用的信息可能来自远程数据库企业也可以用 JDBC 通过 Intranet 将所有职员连到一个或多个内部数据库中(即使这些职员所用的计算机有 Windo
37、ws、 Macintosh 和UNIX 等各种不同的操作系统)。随着越来越多的程序员开始使用Java 编程语言,对从 Java 中便捷地访问数据库的要求也在日益增加。 MIS 管理员们都喜欢 Java 和 JDBC 的结合,因为它使信息传播变得容易和经济。企业可继续使用它们安装好的数据库,并能便捷地存取信息,即使这些信息是储存在不同数据库管理系统上。新程序的开发期很短。安装和版本控制将大为简化。程序员可只编写一遍应用程序或只更新一次,然后将它放到服务器上,随后任何人就都可得到最新版本的应用程序。对于商务上的销售信息服务, Java 和JDBC 可为外部客户提供获取信息更新的更好方法。简单地说,
38、JDBC 可做三件事:与数据库建立连接、发送 SQL 语句并处理结果。下列代码段给出了以上三步的基本示例: Connection con = DriverManager.getConnection(jdbc:odbc:wombat,login, password); Statement stmt = con.createStatement(); ResultSet rs = stmt.executeQuery(SELECT a, b, c FROM Table1); while (rs.next() int x = rs.getInt(a); String s = rs.getString(b
39、); float f = rs.getFloat(c); 上述代码对基于JDBC的数据库访问做了经典的总结。2.4 JSP技术简介 2.4.1 JSP简介JSP(Java Server Page服务器网页)是从1998年开始出现的新技术。由Sun公司倡导、许多公司参与一起建立的一种动态网页技术标准,是基于JavaServlet以及整个Java体系的web开发技术。在传统的网页HTML文件(*.htm,*.html)中加入脚本片段和JSP标记(Tag),构成JSP网页(*.jsp)。JSP技术为创建显示动态生成内容的web页面提供了简便的方法11。JSP作为Java家族的一员,承袭了Java的特
40、点,即跨平台的特性,也即一次编译,到处运行。在国外,己经大量使用JSP作为网络应用程序的开发工具,而在国内,尽管JSP还不是主流开发技术,但是由于JSP的强大优势,许多网站都已经准备转向JSP,利用JSP来开发动态网站。2.4.2 JSP工作原理JSP是面向服务器的,因此支持任何浏览器。当Web服务器和JSP引擎遇到访问JSP网页的请求时,JSP引擎将请求对象发送给服务器端的相关组件,比如JavaBean组件、Servlet或EJB等5,然后由服务器端组件处理这些请示,可能需要从数据库或数据存储中检索信息,然后服务器端组件再将响应对象返回JSP引擎。JSP引擎将响应对象传递给JSP页面,根据J
41、SP页面的HTML格式完成数据编排,最后Web服务器和JSP引擎将格式化后的JSP页面以HTML格式返回客户浏览器6。这就是当前网站构建中广泛采用的浏览器Web服务器后台数据库的三层架构模式。因为JSP所有程序操作都在服务器端执行,网络上传送给客户端的仅是得到的结果。2.4.3 JSP体系结构JSP网站开发标准给出了两种使用JSP的技术,可以归纳为模式一、模式二。模式一:JSP+JavaBeans技术在这种模式中,JSP页面独自响应请求并将处理结果返回给客户。Bean处理所有数据访问,JSP实现页面的表现,以实现内容生成与显示相分离。当处理复杂的大型应用时,页面被嵌入大量的脚本或Java代码段
42、,当需要处理的商业逻辑复杂时,这种情况会变得非常糟糕,大量的内嵌代码使得页面程序变得复杂,对于前端界面设计人员,这是不可思议的事情。所以模式一可用于小型应用,不能够满足大型应用的需要。模式二:JSP+Servlet+JavaBeans技术Servlet技术是一种采用Java技术来实现CGI功能的一种技术,Servlet技术非常适于服务器端的处理和编程,并且Servlet会长期驻留在内存。从开发的观点看,模式二具有更清晰的页面表现,清楚的开发者角色划分,在大规模项目开发中,模式二更被采用,模式二也更符合当前流行的MVC结构(Model/view/controller),其中Servlet对应co
43、ntroller,处于控制者的位置,处理HTTP请求,负责生成JSP中使用的Beans组件或对象,并判断应将请求传递给哪个JSP等,JSP对应view,负责生成最终的动态网页并返回给浏览器。而JavaBeans对应的是Model,实现各个具体的应用逻辑与功能。2.4.4 JSP的特点(1)简化的页面生成技术。JSP页面用标准的HTML或XML命令来处理页面的格式化和布局设计,而用类似HTML、XML的标记和Java语言编写的脚本程序生成页面内容7。这使得页面形式与页面内容互相独立,非常有利于大型项目的分工合作。(2)与Java平台有机集成。JSP技术是Java 2平台的重要组成部分,JSP使用
44、Java语言作为它的脚本语言。在JSP页面中可以使用几乎所有的Java组件和Java API,这就能充分发挥出Java语言的强大功能。使用JSP技术可以创建具有高度可伸缩性和可靠性的Web应用程序。(3)硬件平台器无关性。JSP作为Java家族的一员,秉承了Java技术的“一次编写,随处可用(Write Once,Rum Anywhere)”的特性,可以运行于大多数流行的操作系统平台及Web服务器,这种与服务器硬件和操作系统平台的无关性是JSP相对于其它动态网页技术最大的一个优点。(4)功能可扩展性。如同Microsoft的JSP技术可以通过ActiveX/COM组件来扩展功能一样,JSP可以
45、通过JavaBean和EJB(Enterprise JavaBean)以及自定义的标记来扩展功能。JSP可以通过JDBC,与诸如Oracle、SQL Server这样的大型关系数据库进行连接。JSP提供了一些隐含对象。这些隐含对象在JSP页面中可以直接引用,而不必首先声明。利用JSP提供的这些隐含对象,可以使脚本功能更加强大,并且编程更加容易、方便。例如,利用request对象,可以很容易地接收用户在HTML表单中提交的信息。2.5 MVC框架技术MVC是Model-View-Controller的简称,即模型-视图-控制器。 MVC是一种设计模式,它把应用程序分成三个核心模块:模型、视图、控
46、制器,它们各自处理自己的任务。 视图是用户看到并与之交互的界面,作用如下,视图向用户显示相关的数据,接受用户的输入,不进行任何实际的业务处理,视图向模型查询业务状态,但不能改变模型,视图接受模型发出的数据更新事件,从而对用户界面进行同步更新,模型是应用程序的主体部分, 模型表示业务数据和业务逻辑,一个模型能为多个视图提供数据,由于应用于模型的代码只需写一次就可以被多个视图重用,所以提高了代码的可重用性,控制器接受用户的输入并调用模型和视图去完成用户的需求,当Web用户单击Web页面中的递交按钮来发送HTML表单时,控制器本身不输出任何东西和做任何处理,控制器接收请求并决定调用哪个模型组件去处理
47、请求,然后决定调用哪个视图来显示模型处理返回的数据,首先控制器接收用户的请求,并决定应该调用哪个模型来进行处理,然后模型根据用户请求进行相应的业务逻辑处理,并返回数据,最后控制器调用相应的视图格式化模型返回的数据,并通过视图呈现给用户。 首先,最重要的一点是多个视图能共享一个模型。同一个模型可以被不同的视图重用,大大提高了代码的可重用性8。由于MVC的三个模块相互独立,改变其中一个不会影响其他两个,所以依据这种设计思想能构造良好的松偶合的构件9。 此外,控制器提高了应用程序的灵活性和可配置性。控制器可以用来联接不同的模型和视图去完成用户的需求,这样控制器可以为构造应用程序提供强有力的手段10。 使用MVC需要精心的计划,由于它的内部原理比较复杂,所以你需要花费一些时间去理解它。将MVC运用到你的应用程序,会带来额外的工作量,增加应用的复杂性,所以MVC不适合小型应用程序11。 但对于开发存在大量用户界面,并且业务逻辑复杂的大型应用程序,MVC将会使你的软件在健壮性、代码重用和结构方面上一个新的台阶。尽管在最初构建MVC框架时会花费一定的工作量,但从长远角度看,它会大大提高后期软件开发的效率12。3 需求分析3.1 需求分析3.1.1 需求分析的作用 需求分析13
链接地址:https://www.31ppt.com/p-4027696.html