计算机设计ASPNET大学综合管理系统论.doc

上传人:wux****ua 文档编号:9375265 上传时间:2020-04-05 格式:DOC 页数:22 大小:296KB
返回 下载 相关 举报
计算机设计ASPNET大学综合管理系统论.doc_第1页
第1页 / 共22页
计算机设计ASPNET大学综合管理系统论.doc_第2页
第2页 / 共22页
计算机设计ASPNET大学综合管理系统论.doc_第3页
第3页 / 共22页
点击查看更多>>
资源描述
目 录第一章 .NET 概述- 1 1.1 .NET 的历史- 1 1.2 .NET 的介绍- 2 1.3 .NET 架构- 3 1.3.1 .NET的体系结构- 3 1.3.2 .NET的开发工具- 3 第二章 认识 COM 组件 -6 2.1 COM的定义 -6 2.2怎样部署 COM+ 应用程序-6 2.3怎样设置COM+的安全-6 第三章 对SQL Server 2000的认识- 7第四章 大学综合管理系统- 9 4.1 需求- 9 4.1.1大学网站的详细需求- 9 4.1.2大学管理系统的详细需求- 9 4.2 设计- 11 4.2.1 大学综合管理系统设计- 11 4.2.2 大学综合管理系统数据库设计- 14 4.3 编码- 23 4.4 测试- 24 4.5 维护- 25 第五章 总结- 26第一章 .NET 概述1.1 .NET 的历史2000,微软说,我在弄一个大东西,叫NGWP(好像错了一个字母),扔出了后来叫.NET的SDK beta版。 2001年,.NET Beta2(Framework + IDE) 2002年,.NET Framework 1.0 + VS.NET 2003年,.NET Framework 1.1 + VS.NET 2003 2004年,.NET 2.0 Beta (Framewrok + IDE) 2005年,2.0 beta2 release12.NET的介绍什么是Microsoft .NET? Microsoft .NET是Microsoft的XML Web服务平台。.NET包含了建立和运行基于XML的软件所需要的全部部件。 Microsoft .NET解决了下面这些当今软件开发中的一些核心问题: 互操作性(Interoperability)、集成性(Integration)和应用程序的可扩展性(extensibility)太难实现而且代价很高。Microsoft .NET依靠XML(一个由World Wide Web Consortium(W3C)管理的开放标准)消除了数据共享和软件集成的障碍。 无数具有相当竞争力的私有软件技术使得软件的集成变得非常复杂。而Microsoft .NET建立在一个开放的标准上,它包含了所有编程语言。 当终端用户使用软件时,他们总觉得不够简便。有时甚至感到很沮丧,因为他们无法在程序之间方便地共享数据或是无法对能访问的数据进行操作。XML使数据交换变得容易了,并且.NET软件可以使得用户只要一得到数据就能对它们进行操作。 终端用户们在使用Web的时候,无法对自己的个人信息和数据进行控制,这导致了个人隐私和安全泄漏问题。而Microsoft .NET提供了一套服务,使用户可以管理他们的个人信息,并且控制对这些信息的访问。 .COM公司和Web站点开发者们很难为用户们提供足够的有价值的数据,至少有一部分原因是由于他们的应用程序和服务无法很好地和其他程序和服务合作,只是一个不和外界连接的信息孤岛。而Microsoft .NET的设计宗旨就是为了使来自于多个站点和公司的数据或服务能够整合起来。13.NET框架1.3.1.NET体系结构.NET由三大核心组成,它们是XML、Web Service、.Net FrameWork。XML是可扩展标记语言,已成为数据交换的标准。.NET框架是一个多语言组件开发和执行环境,他提供了一个跨语言的统一编程环境。.NET框架的目的是便于开发人员更容易地建立Web应用程序和Web服务,使得Internet上的各应用程序之间,可以使用Web服务进行沟通。开发人员可以将远端应用程序提供的服务和单机应用程序的服务结合在一起,组成一个应用程序。例如:一个B2C的电子商务网站可以按这种方式组成在线交易,使用Microsoft Passport服务来验证用户身份,使用合作厂商的信用卡处理服务。从层次上来看,.NET框架又包括三个主要组成部分:公共语言运行时(CLR:Common Language Runtime)、服务框架(Services Framework)和上层的两类应用模板传统的Windows应用程序模板(Win Forms)和基于ASP.NET的面向Web的网络应用程序模板(Web Forms和Web Services)。其结构如下图所示。 .NET FrameWork体系结构图NET FrameWork,是新一代开发平台,是开发Web Service的重要工具,它能连接现有孤立的Web应用程序,让互联网的信息在任何时间、任何地点都可以得到简化开发和部署。它提供了一套统一类库Base Class Library和通用语言运行库(CLR),创建了一套跨编程语言的通用API,使开发人员无论使用何种语言,都可以开发NET应用服务。它的另外一个重要组成部分就是其开发Web应用程序的Web应用平台ASPNET,它在以前的ASP版本的基础上有了一个重大的飞跃,具有丰富的交互式网页功能,能开发强大的Web Services应用。.NET框架提供统一的编程模式:不论什么语言和编程模式都是用一样的API,结构下图所示。.NET框架提供统一的编程API:NET Framework 类库。结构如下图所示。1.3.2NET的开发工具在NET FrameWork中对于开发人员,提供了VBNET、C、以及CNET开发工具Visual StudioNET。其中C是微软最新的NET开发语言,在企业计算领域,C将成为用于编写NET应用程序的主要语言。C从C发展而来,它革新了C中的一些类,把一些复杂的功能放弃了,不再有宏、模板和多重继承,使C更容易使用且不易出错。C中添加的新功能是严格的类型安全、版本控制、垃圾收集等,使得开发人员能开发出高质量的应用。VBNET在VB6的基础上有了大变化,VB程序员可以继续使用心爱的VB来开发NET应用程序。在Visual Studio NET中并没有用C完全取代C,仍然包含了CNET开发工具。在开发客户端本地Web Service应用上,Visual C仍然有其不可替代的优势,使得程序能更高效地运行,而且得到更加灵活的控制。第二章 认识COM组件2.1 COM的定义微软的官方教材上是这样说的:COM是一个二进制对象互动的标准或模型。一个COM的重要特点是COM是已经预先编译过的。这就意味着COM是和语言无关的。我个人认为COM的定义是:COM是一种windows平台下二进制组件的复用技术。合二为一的用户接口 当我们在 Microsoft 1998 年专业开发人员讨论会中介绍 COM+ 的早期测试版时,某天晚上,一个心情烦躁的程序员向我们发出诘问。“Microsoft 到底要干什么?”他说,“想让我们都失业吗?”对于一个为期四天、排满了专门针对与会的 6000 多名开发人员的议题的讨论会来说,这个问题似乎太奇怪了。尽管如此,我们毕竟有些好奇:“您为什么这样说?”“哼,”他接着说,“看看新的 COM+ 用户接口吧。系统管理员几乎能利用它做任何事情。他们再也用不着我们了。” 我们对这位先生保证,他不会丢掉自己的工作。实际上,作为一名 Windows DNA 开发人员,他可能会比以往更有价值。而且,在文章的一开始,我们也愿意向各位系统管理员做出同样的保证。乍一看,新的 COM+ 用户接口(或者用更正式的说法,是组件服务管理工具)似乎无坚不摧:可以用它来执行的操作太多了,包括设置下至组件级的属性,甚至不止如此,它还可用来设置组件接口和方法级的属性。 但当您考虑到组件服务管理工具的双重功能性时,就会发现它不但不那么可怕,而且功能还非常丰富呢。它为系统管理员和应用程序开发人员设计了合二为一的用户接口。在本文中,我们将向您介绍该工具的管理功能,并简要介绍它如何使系统管理员的工作变得更容易。因为本文仅是概述性的,所以我们只概念性地解释这些任务,而未提供具体过程。(有关过程及进一步信息,请参见“组件服务管理帮助”。)我们首先介绍 MTS 与 COM+ 之间的几个主要更改。然后,我们将讨论组件服务管理工具如何用于三种最常见的系统管理任务: 部署应用程序 设置基于角色的安全措施和应用程序的安全标识 管理对象池,以获得最佳系统性能 从 MTS 到 COM+ 许多 IIS 用户对 Microsoft Transaction Server (MTS) 及其用户接口 - MTS Explorer 已经很熟悉。可将 COM+ 视为传统 COM 与 Windows 2000 系统中的 MTS 相结合的一组服务。随着 COM+ 的引入,MTS 的功能也已并入操作系统。如您所将要看到的,COM+ 还可发展和增强 MTS 提供的服务。 如果您一直用的是 MTS 和 MTS Explorer,当您启动组件服务管理工具时,将会注意到几个主要变化。最明显的是,MTS 软件包现在称为 COM+ 应用程序。 “COM 应用程序”并非一个全新概念。它只是个术语,指为了协同工作而开发的多组 COM 组件。在传统的 COM 应用程序中,要安装组件,必须先在注册表中配置各项,这样组件才能够运行。通常用 Regsvr32 实用程序完成这项工作。使用 COM+,当您将组件配置为 COM+ 应用程序时,针对组件的此步骤将自动执行。COM 组件仍可使用 Regsvr32 实用程序在 Windows 2000 中注册,并作为“未配置组件”存在于 COM+ 环境中。未配置组件不会显示在组件服务管理工具中,也不会利用新的 COM+ 服务。但这些组件运行时,会利用 COM+ 供运行分布式 COM+ 应用程序的基本结构的一部分。 COM+ 应用程序由一个或多个 COM 组件组成。“COM 类”是一个或多个接口的已命名的具体实现。类通过它的“接口”,提供一组称为“方法”的相关功能。“COM 对象”是 COM 类的一个实例。“COM 组件”是可创建 COM 对象的二进制单位代码(包括打包和注册代码)。 COM 类是用 CLSID 标识的(有时也用 ProgID)。接口是规定了一种契约的一组相关功能,它包括名称、接口签名、接口语义及调度缓冲格式。 接口用 IID 标识。接口语法是在 IDL 和/或类型库中定义的。类的接口应划分为各种可管理的、内聚的方法集。切记,接口是不可改变的,COM 契约规定不可对其加以修改。任何修改(如添加方法)均需定义新接口才能进行。 2.2怎样部署 COM+ 应用程序 应用程序编程人员使用 COM+ 编写各种组件,并将其集成在一起,成为应用程序;而系统管理员的任务通常是安装、部署和配置 COM+ 应用程序及其组件。一般情况下,开发人员会将已进行部分配置的 COM+ 应用程序提供给系统管理员。或者,应用程序也可由外部提供。例如,当您从独立软件供应商 (ISV) 处购买 COM+ 应用程序时,即属于这种情况。然后,管理员就可以针对一个或多个特殊环境自定义应用程序(例如,通过在应用程序群集的角色和服务器名称中添加用户帐户)。典型的管理任务包括: 在执行管理任务的机器上安装已进行部分配置的 COM+ 应用程序。 提供具体环境的属性,例如角色成员和对象池大小。 设置 COM+ 应用程序运行的身份(Windows 2000 用户帐户)。 重新导出已完全配置好的 COM+ 应用程序。 创建应用程序代理(如果将远程访问应用程序的话)。 针对具体环境完全配置好应用程序后,管理员即可将其部署在测试和/或产品机器上。这包括将完整的、已配置的 COM+ 应用程序安装在一台或多台机器中。 组件服务管理工具使用工具中的 Application Export 向导,从而使跨多个服务器部署 COM+ 应用程序变得更容易。您可以使用组件服务管理工具,创建 COM+ 应用程序和应用程序代理的安装软件包。COM+ 可生成与 Windows Installer 兼容的安装软件包,该软件包在一个文件中包含了所有将 COM+ 应用程序安装到另一台机器上所必需的软件。 包含 COM+ 应用程序的 .msi 文件只可安装在支持 COM+ 1.0 服务(目前仅有 Windows 2000 支持)的计算机中。一个额外的好处是,除非用 Windows Installer 创作工具修改了 .msi 文件,否则用 Windows Installer 安装的 COM+ 应用程序就会出现在“添加/删除程序”控制面板中。 组件服务管理工具生成的 .msi 文件包含: 带有 COM+ 注册信息的 Windows Installer 表。 一个包含应用程序属性的 .apl 文件。 DLL 和类型库,描述由 COM+ 应用程序类实现的接口。 除 .msi 文件外,组件服务管理工具还会产生一个压缩包 (.cab) 文件。实际上该文件会将 .msi 文件包起来,这样,即可通过 Internet Explorer 部署 COM+ 应用程序。 安装 COM+ 应用程序代理 为了能够从另外的(客户)计算机远程访问 COM+ 服务器应用程序,客户计算机必须装有服务器应用程序属性的子集,包括用于 DCOM 远程接口的代理/存根 DLL 及类型库。该子集的术语是“应用程序代理”。 您可利用组件服务管理工具,轻而易举地导出 COM+ 服务器应用程序,使其成为应用程序代理。COM+ 生成的应用程序代理是标准的 Windows Installer 安装软件包。安装后,应用程序代理会出现在客户计算机的“添加/删除程序”控制面板中。 在生成应用程序代理时,COM+ 会自动提供以下信息。这些信息是应用程序代理远程访问 COM+ 服务器应用程序时必需的。 类标识信息(CLSID 和 ProgID) - 一个应用程序代理最多可支持两个 ProgID。 应用程序标识及类与应用程序的关系 (AppID)。 每个应用程序的位置信息(远程服务器名称)。 应用程序的所有接口的调度信息(例如,类别库和代理/存根)。 MSMQ 队列名称与标识(如果应用程序中启用了排队组件服务)。 类、接口和方法属性,不包括角色信息。 应用程序属性。 与 COM+ 服务器应用程序不同,应用程序代理可安装在任何支持 DCOM 和 Windows Installer 的操作系统中。其它 Windows 平台上的客户机也可访问在 Windows 2000 服务器上运行的 COM+ 应用程序。在不是运行 Windows 2000(因而也就没有 COM+)的计算机上,将只安装 DCOM 远程访问所需的信息子集。这些信息将安装在 Windows 注册表中。在不是运行 Windows 2000 的计算机上安装应用程序代理(.msi 文件)时,有必要使 Windows Installer 在这些机器上运行。Windows Installer 作为 Platform SDK 的一部分,以可重新分布的格式出现。 2.3设置 COM+ 安全 安全角色可模拟并实施 COM+ 应用程序的访问控制规则。角色是指为了确定对应用程序资源的访问权限,而为应用程序定义的用户类别。开发人员将角色(符号式用户类别)分配给应用程序,也就潜在地将其分配给了应用程序内的精细结构 - 包括组件、接口、方法或专用应用程序资源。然后,这些角色分配即用于确定哪些用户类别拥有访问应用程序内的哪些元素的权限。 如果应用程序使用基于角色的安全措施,那么每次调用应用程序时,均会检查调用者的角色成员身份。如果调用者不属于对该项目拥有访问权限的角色,调用将会失败。调用者对应用程序或其资源的访问权限,是严格按照调用者所属角色中定义的限制条件授予他们的。 系统管理员的工作是将 Windows 2000 用户帐户和组填充到为应用程序定义的角色中。在执行应用程序的安全规则过程中,这是个至关重要的阶段。给用户分配的角色必须正确代表用户可能会通过应用程序访问的数据和资源与用户之间的关系。 将用户填入角色的最好方法是使用 Windows 2000 组。首先,将用户帐户分配给适当的组,然后确保将该组分配给适当的角色。用 Windows 2000 组填充角色,使您更易于管理大量用户。 在企业计算环境中,常常很难有效跟踪每个用户在组织内的职位,也很难确定如何将用户的职位映射到每个应用程序所特有的基于角色的安全规则。随着用户、管理员和应用程序数量的增加,这项任务也变得越来越复杂。最易于扩展的解决方案是将用户组分配给 COM+ 应用程序角色。 只有在您理解应用程序安全规则后,才可以将组分配给角色。理想情况下,角色的名称应能表明哪些人应属于该角色,例如“Managers”和“Tellers”。此外,每个角色均包含一些描述,您可使用组件服务管理工具访问这些描述。描述中会介绍哪种类型的用户应属于该角色。但是,如果您无法确定哪些用户组属于哪个角色,请参考应用程序的附带文档,或请开发人员澄清。 您可以使用组件服务管理工具,在应用程序安装期间初步分配角色,也可以在应用程序使用期间,对角色成员身份进行任何必要的更改。 对象池 对象池是一种由 COM+ 提供的自动服务,您可用它配置组件,使组件的实例在对象池中保持活动状态,准备好供任何请求该组件的客户机使用。可以对给定组件所维护的对象池进行管理性的配置和监视,并为其指定一些特性,如池的大小和创建请求超时值。一旦应用程序开始运行,COM+ 将管理对象池,根据您指定的标准,处理对象激活和重新使用的细节。 以这种方式重新使用对象,可在性能和扩展性方面显著获益,尤其是将这些对象编写成能够充分利用重新使用时。通过对象池,您可以对池进行管理性配置,使之能够最大限度地利用可用硬件资源。池的配置会随着可用硬件资源的改变而改变。您还可以通过管理性的池管理,控制资源使用。 当您配置组件使之进入对象池时,COM+ 将会维护该组件在对象池中的实例,准备好当任何客户端请求该组件时,立即激活它。所有对象创建请求都会通过池管理器处理。 当应用程序启动时,只要成功创建了对象,对象池就会一直被填充,直到达到您管理性地指定的最低级别。客户机对组件的请求进入后,会以先入先处理为基础而满足。如果对象池中没有可用对象,而且对象池尚未达到其指定的最高级别,就会为该客户机创建并激活一个新对象。 当对象池达到其最高级别时,客户机请求就开始排队。每个请求均会接收来自对象池的第一个可用对象。对象的数量(包括已激活的和未激活的)永远都不会超过对象池的最大值。在一段管理性指定的时间过后,对象创建请求将超时,这样您就能控制客户机等候对象创建的时间。只要可能,在客户机释放一个对象后,COM+ 就会试着重新使用它,直到对象池达到其最高级别。 您可以用对象池的最大容量来精确控制资源使用。例如,如果您有权使用一定数量的数据库连接,您就可以随时控制已打开的连接的数量。 如果您能够考虑到客户使用模式、对象使用特征以及物理资源(如内存与连接),就有可能在调整性能时找到某种最佳平衡。池对象的产出量在达到某一点后,会逐渐衰减。您可确定自己需要哪一级别的性能,并将其与要达到此性能所需的资源相平衡。有了对象池,您就能控制资源的使用。 第三章 对SQL Server 2000的认识SQL Server 2000是微软公司最新版的大型数据库服务器,其性能指标在各方面都有赶超Oracle数据库的趋势。在经历了SQL Server 6.5和7.0两个版本的尝试后,微软公司终于开始向大规模的业务领域进发了。记得在以前各种关于SQL Server的文章,都会将其定位成中小型应用方面,这种感觉被大家自然的延续到了2000版之中。其实这是一种误解。在过去的很长一段时间中,微软公司凭请了世界上最优秀的数据库专家以及专门搭建了信息量可谓空前的地理信息系统,励精图治,就是为了摘掉扣在自己头上的这顶帽子。有了强大的性能和功能支持,再配合其一向为人称道的易用性,SQL Server可以说成为了开发者手中的一柄利器! 另外,目前国内的一些关于微软平台的数据库编程教程,喜欢使用Access作为数据库平台的案例,并展开相关的内容。这其实对于开发真正的数据库应用并没有直接的帮助作用,只能使大家停留在应用的初级阶段。SQL Server 2000提供的非常傻瓜的缺省安装和使用模式,其上手难度并不比Access大。另外,SQL Server 2000可以兼顾小、中、大规模的应用,有着远远比Access强大的伸缩性。因此,建议大家不如一步到位,直接从高起点开始,这对于持续发展个人技能也是很有好处的。笔者进行了一段时间基于SQL Server 2000系统的平台应用开发,积累了一定的经验。为了可以将这些经验和大家共享,在未来一段时间将逐步推出与SQL Server密切相关的系列教程。一、硬件和操作系统要求硬件 最低要求 计算机 Pentium 166 MHz 或更高。内存 (RAM) 至少 64 MB,建议 128 MB 或更多。根据笔者的经验,内存容量可以和数据容量保持1:1的比例,这样可以更好的发挥其效能。 硬盘空间 需要约500MB的程序空间,以及预留500M的数据空间 显示器 需要设置成800x600模式,才能使用其图形分析工具二、详细的安装过程本文将在Windows 2000 Advanced Server操作系统作为示例,详细介绍安装SQL Server 2000企业版的过程。大家清首先安装Windows 2000 Advanced Server。如果手头上没有SQL Server 2000企业版,可以到微软公司的这个网址下载试用版:http:/www.microsoft.com/china/sql/downloads/default.asp 或者到软件公司购买产品。将企业版安装光盘插入光驱后,出现以下提示框。请选择 安装 SQL Server 2000 组件,出现下一个页面后,选择 安装数据库服务器 。 选择 下一步,然后选择 本地计算机 进行安装。 在 安装选择 窗口,选择 创建新的SQL Server实例.。对于初次安装的用户,选用这一安装模式,不需要使用 高级选项 进行安装。 高级选项 中的内容均可在安装完成后进行调整。在 用户信息 窗口,输入用户信息,并接受软件许可证协议。在 安装定义窗口,选择 服务器和客户端工具 选项进行安装。我们需要将服务器和客户端同时安装,这样在同一台机器上,我们可以完成相关的所有操作,对于我们学习SQL Server很有用处。如果你已经在其它机器上安装了SQL Server,则可以只安装客户端工具,用于对其它机器上SQL Server的存取。在 实例名 窗口,选择 默认 的实例名称。这时本SQL Server的名称将和Windows 2000服务器的名称相同。例如笔者的Windows服务器名称是 Darkroad,则SQL Server的名字也是 Darkroad。SQL Server 2000可以在同一台服务器上安装多个实例,也就是你可以重复安装几次。这时您就需要选择不同的实例名称了。建议将实例名限制在 10 个字符之内。实例名会出现在各种 SQL Server 和系统工具的用户界面中,因此,名称越短越容易读取。另外,实例名称不能是 Default 或 MSSQLServer 以及SQL Server的保留关键字等。在 安装类型 窗口,选择 典型 安装选项,并指定 目的文件夹。程序和数据文件的默认安装位置都是 C:Program FilesMicrosoft SQL Server。笔者因为C盘是系统区、D盘是应用区,因此选择了D盘。注意,如果您的数据库数据有10万条以上的话,请预留至少1G的存储空间,以应付需求庞大的日志空间和索引空间。在 服务账号 窗口,请选择 对每个服务使用统一账户. 的选项。在 服务设置 处,选择 使用本地系统账户。如果需要 使用域用户账户 的话,请将该用户添加至Windows Server的本机管理员组中。在 身份验证模式 窗口,请选择 混合模式. 选项,并设置管理员sa账号的密码。如果您的目的只是为了学习的话,可以将该密码设置为空,以方便登录。如果是真正的应用系统,则千万需要设置和保管好该密码!:)如果需要更高的安全性,则可以选择 Windows身份验证模式 ,这时就只有Windows Server的本地用户和域用户才能使用SQL Server了。在 选择许可模式 窗口,根据您购买的类型和数量输入(0表示没有数量限制)。 每客户表示同一时间最多允许的连接数,处理器许可证表示该服务器最多能安装多少个CPU。笔者这里选择了 每客户 并输入了100作为示例。(嘻嘻,别选得太多,越多越贵呀!:)然后就是约10分钟左右的安装时间,安装完毕后,出现该界面,并新增了以下的菜单。如果您是个初学者,就可以先打开 联机丛书,做一个简单的学习啦!第四章 大学综合管理系统随着科学技术的飞速发展,电脑硬件技术的日渐成熟,使得电脑的价格不断的下调,电脑的普及以指日可待.大学扩招使得随着学院和学生数目的增加,对于大学的管理人员来说,维护学生材料的工作将变得困难。在这个时候,大量的记录将导致延迟公布,新生面试结果和不同学期的考试成绩也需要大量的人力,所以,大学管理程计算机化已成必然的趋势。4.1 需求大学综合管理系统由两部分组成: 大学网站和大学管理系统.其中大学网站是一个Web应用程序,未入学新学生可以通过Web浏览器登陆到此网站了解学校的情况,完成网上报名;学生还可以通过浏览器登录到网站查看到学校的一些重要的通知,新闻,各学期的成绩等.此外,为加强学生与学生,教师与学生的沟通开设大学论坛. 大学管理系统为大学的教职员工提供大学的日常的管理功能(例如教师添加学生的成绩,教务人员添加删除修改学院、课程、学生的资料).4.1.1 大学网站的详细需求 大学网站主要包括以下功能: 浏览网站可以浏览学校的情况、师资情况及学校的一些现况等. 为入学新生可以网上填写资料报名. 学生可以登陆,注册. 学生可以登陆网站查询每个学期的成绩、学校的通知、新闻等. 学生登陆后可以进入论坛交流(例如学习方法、问题求助等).4.1.2 大学管理系统的详细需求 大学管理系统主要包括以下功能: 招生办公室模块.可以录入来校报名的新学生的资料,可以给通过审核的新学生发送面试的信息(通过Email、电话等). 综合查询模块.* 可以根据学生的学号、学生编码查询学生的基本信息及修改须生的基本信息.* 可以根据教师的编码查询教师的基本信息及修改教师的基本信息.* 可以根据其他员工的编码查询员工的基本信息及修改员工的基本信息. 教师模块.* 添加学生的成绩.* 对学生转系的处理.* 对学生一学期的表现填写评语. 学校资源管理模块.* 可以维护学校资源(教室、宿舍及教学设备等).* 学院图书的管理. 报表模块.* 可以统计新生的招收报名情况.* 可以统计新生的入学注册情况. * 可以统计新学期学生的注册情况.* 可以根据学生的分数、课程、统计学生的信息.* 可以统计学生、教师的出勤及功过情况.* 可以统计学校资源的使用,空闲情况.* 可以统计学校的各院系的基本情况.* 可以统计学校院系的进度、课程的安排情况. 系统管理模块.* 维护大学网站的信息(如新闻,通知等)刷新.* 可以删除论坛上不健康的留言,取消在论坛交流的资格.* 可以添加、修改、删除学校教职员工的信息.* 可以添加、修改、删除学校的院系信息.* 可以添加、修改、删除课程.* 可以添加、修改、删除各院系的进度及课程.* 可以添加、修改、删除学校的资源. 消息、公告模块.* 可以发布通知.* 可以留言聊天4.2 设计通过反复的思考我设计了以下的系统构架,如下图: 大学系统结构图4.2.1 大学综合管理系统设计进行该系统的设计时要保证该系统的扩展性,当有新的业务或有新的业务规则调整时能够比较容易地实现.,并最终以三层应用程序地方式进行开发及部署.该应用程序分为三部分进行设计和开发: WEB 应用程序.主要存放CONFIG 、ASPX、C# 应用程序. windows应用程序主要存放 VB、CONFIG 应用程序. COM组件主要存放 dll 文件下面是各模块的目录图: rmmsgstutshtchsysmeunWEBl Rm 目录下放的是关于学校资源模块web程序.l Msg 目录下放的是关于消息、公告模块的web 程序.l Stu 目录下放的是学生资料的 web 程序.l Tsh 目录下放的是报表模块的 web 程序.l Tch目录下放的是教师资料的 web 程序.l Sys 目录下放的是系统管理模块的 web 程序.l Meun目录下放的是大学网站模块及大学管理系统首页的 web 程序.rmmsgstutshtchsysmeun windows应用程序l Rm 目录下放的是关于学校资源模块 class程序.l Msg 目录下放的是关于消息、公告模块的class程序.l Stu 目录下放的是学生资料的 class程序.l Tsh 目录下放的是报表模块的 class程序.l Tch目录下放的是教师资料的 class程序.l Sys 目录下放的是系统管理模块的 class程序.l Meun目录下放的是大学网站模块及大学管理系统首页的 class程序. 4.2.2 大学综合管理系统数据库设计数据库应用系统设计中的一个核心问题,就是如何设计一个能够满足用户当前与可预见的未来的各项应用要求、性能良好的数据库。数据库设计是从用户的数据需求、处理要求及建立数据库的环境条件(软、硬件特性,其他限制)出发,把给定的应用环境(现实世界)存在的数据加以合理地组织起来逐步抽象成已经选定的某个数据库管理系统能够定义和描述的具体的数据结构的过程。数据库设计的成果是数据库模式和应用程序,而应用程序是以数据为基础的。因此,数据库设计中最基本的是数据库模式的设计。但是,设计一个完善的数据库系统往往是一个不断反复的过程,数据库模式必须反映数据处理的要求,保证常用的或大多数的数据处理,使用方便,性能满意,且应根据应用需求适当地修改,调整数据结构,优化数据模型,以便进一步提高数据库应用系统的性能。规范数据模式数据模式是关系数据库的重要组成部分,构造合适的数据模式是实现关系数据库优化设计的一个重要方面。由于关系模型有较为严格的数学工具做支撑,故一般多以关系模型做讨论的环境,从而形成了关系数据库设计理论。由于这种合适的数据模式应该符合一定的规范化要求,因而又可称为关系数据库的规范化理论。规范化理论所谓关系规范化就是按统一标准对关系进行优化,以提高关系的质量,为构造一个高效的数据库应用系统打下基础。例如有一个反映轮船信息的数据库,由以下8个属性组成:船号、船名、马力、部件号、部件名、型号、重量及用量。将这8个属性构造成一个合适的关系模式,从而构造一个关系数据库,其构造方法很多。最简单的是,将8个属性组成如下关系:轮船(船号、船名、马力、部件号、部件名、型号、重量及用量)但是,在对这个关系操作时会有3个问题:(1)冗余度大一艘轮船有N个部件,就有N次重复船号、船名、马力的数据;(2)插入异常一种部件,如果在某一阶段没有轮船用到,其对应的信息就无法插入,使数据库在功能上产生了不正常的现象,同时也给用户带来极大的不便;(3)删除异常一种部件,若只有一艘轮船用到,则删除他的信息,有关他选用的部件信息同时也删除了,从而丢失了应用的数据。从上面的分析可知,轮船关系不是一个“好”的数据库模式。一个“好”的模式应当避免发生插入异规范化理论认为,关系中的各属性是相互关联的,他们互相依赖、互相制约,构成一个结构严谨的整体。因此,在关系设计中,必须从语义中摸清这些关联,特别是依赖关系,只能把那些相互关联密切的属性拼凑在一起。构造一个“好”的数据库模式,必须使他的关系模式的属性之间满足某种内在的语义条件,而这种联系又可对关系的不同要求分为若干等级,这就是关系规范化。以函数依赖为基础的关系模式的规范化等级主要有5种,即第1范式(1NF),第2范式(2NF),第3范式(3NF),BC范式(BCNF)和第4范式(4NF),满足这些范式条件的关系模式可在不同程度上避免冗余、插入和更新异常问题。规范化理论的应用为了消除关系模式在操作上的异常问题,优化数据模式,可进行规范化处理。具体做法是:确定数据依赖,把每个关系模式的各个属性按数据分析阶段所得到的语义写出其数据依赖,同时,考察不同的关系模式属性之间是否还存在某种数据依赖,得到一组数据依赖及诸关系的全部数据依赖。按照数据依赖的理论,逐一分析这组关系模式,确定他们属于第几范式,进行模式分解。例如,对上述轮船关系进行分解,提高范式等级,可构成一个轮船信息的数据库,他的数据模式由4个关系组成:轮船(船号、船名、马力);使用(船号、部件号、用量);部件(部件号、部件名、型号);型重(型号、重量)。这4个关系属于3NF,至此,是一个比较“好”的数据库了。模式分解的2条原则关系规范化是可以解决关系操作的问题,但进行模式分解时由于受到数据间的相互约束,因此分解不可能是随意的。在规范化化的关系分解过程中,不仅要着眼于提高关系的范式等级,而且应遵守以下2条原则:(1)无损分解原则无损分解就是在关系分解过程中,既不丢失数据也不增加数据,同时还能保持原有的函数依赖。一个关系分解为多个关系,原来的数据就存储到多个关系中,起码要求分解后不能丢失原来的信息。(2)相互独立原则所谓独立是指分解后的新关系之间相互独立,对一个关系内容的修改不应该影响到另一关系。此外还应注意到,关系分解必须从实际出发,并不是范式等级越高,分解得越细就越好。若把关系分解得过于琐碎,虽然对于消除数据冗余和更新异常等有好处,但在进行检索操作时往往又需要进行链接,从而使检索效率大大降低。另外,在数据操作中经常是检索操作多于更新操作,其结果很可能是分解带来的好处与检索的效率降低相比,得不偿失。正因为如此,一般规范化只需达到3NF就可以了。改善数据库性能关系数据库的性能的好坏,主要体现在查询的速度上,他是数据库应用中的一个关键问题,是必须在数据库的设计中加以认真考虑的问题,特别是对那些响应时间要求较苛刻的应用,应予以特别注意。可从以下几个方面提高查询速度,改善数据库性能,从而达到数据库设计的优化目的。减少连接操作连接操作对数据库的查询速度有着重要的影响,参与联接的关系越多,查询越慢。因此,对一些常用的、性能要求较高的数据库查询,最好是一元查询,这与规范化的要求相矛盾。有时为了保证性能,把规范化的关系再合并起来,称之为逆规范化。当然,这样会引起更新异常,破坏数据库完整性,必须采取相应的措施来保证数据库的完整性,从而也会增加系统的开销。因此,决定做逆规范化时,一定要权衡利弊,仔细分析应用的数据存取需求和实际的系统性能。减小关系大小及数据量被查询关系的大小对查询速度影响很大。为了提高查询速度,可以采用水平分割或垂直分割等方法把一个关系分成几个关系,使每个关系的数据量减少。例如,对于有关学生的关系,既可以把全校集中在一个关系中,也可用水平分割的方法,分系建立关系,从而减少了每个关系的元组数。前者对全校范围内的查询较方便,后者则可以显著提高对系的查询速度;也可采用垂直分割的方法,把常用数据和不常用的数据分开,以提高常用数据的查询速度。例如:人事档案中,属性很多,有些需经常查询,有些则很少查询。如果放在一起,则关系数据量很大,影响查询速度。分开可提高常用数据的查询速度。垂直分割提高了一些操作的速度,但也可能使某些操作不得不执行连接操作,从而降低了效率。因此,决定是否进行垂直分割取决于是否垂直分割后数据库上的所有操作的总效率得到了提高。同时,垂直分割还要确保无损连接和保持函数依赖。 节省存储空间 尽管随着硬件技术的发展,提供给用户使用的存储空间越来越大,但毕竟是有限的,而数据库,尤其是一型的数据库,需要占用的存储空间比较大。因此,节省存储空间仍是数据库设计中要考虑的问题。为此,在数据库优化设计中,可采取以下措施:缩小每个属性占用的空间一般用编码表示属性,用缩写名代替全称,可以节省存储空间,但用户看起来就不那么直观了,须根据实际条件斟酌决定。采用假属性在有些关系中,某些数据会多次出现,采用假属性可以减少重复数据占用的存储空间。例如:在职工关系中,职工的经济状况这一属性,通常由职工号决定。一个大型企业的职工人数较多。如每一个职工逐一填写经济状况,就要占用较多的空间,而其经济状况有相同的和相似的情况,也即,经济状况这一属性不同值比较少,而在关系中可能有较多的重复。为此,可把经济状况分为几种类型,用类型代替原来的经济状况(这类经济状况的类型就是假属性),另外建立一个较小的关系来描述每种经济状况的具体内容。这样,可大大减小数据占用存储空间的用量。结语数据库设计不同于数学问题,他是一项综合性工作,受到各种各样因素的制约,有些要求往往是彼此矛盾的。因此,设计结果常常是有得有失。因此,设计者必须根据实际情况,综合应用上述技术,在基本合理的总体设计的基础上,做一些优化调整,力求最大限度地满足用户各种各样的要求,实现数据库的优化设计。以下是大学综合管理系统的表结构:字段中文名字段英文名数据属性备注学院表(School_Info)学院名School_NameVARCHAR2(20)学院名学院ID(PK)School_IDNUMBER(9)学院ID时间Open_DateDATA增加时间学院负责人School_UserVARCHAR2(50)学院负责人学院状态School_StateVARCHAR2(2)1为有效,0为无效工号(FK)User_CodeNUMBER(9)添加工号备注NoteVARCHAR2(20)备注学院系别表(School_Dep_Info)系别名Dep_NameVARCHAR2(20)系别名系别ID(PK)Dep_IDNUMBER(9)系别ID学院ID(FK)School_IDNUMBER(9)学院ID系主任Dep_UserVARCHAR2(50)系主任系状态Dep_StateVARCHAR2(2)1为有效,0为无效时间Open_DateDATA增加时间工号(FK)User_CodeNUMBER(9)添加工号备注NoteVARCHAR2(20)备注课程表(School_Sub_Info)课程名Sub_NameVARCHAR2(20)课程名课程ID(PK)Sub_IDNUMBER(9)课程ID时间 Open_DateDATA增加时间课程状态Sub_StateVARCHAR2(2)1为有效,0为无效工号(FK)User_CodeNUMBER(9)添加工号备注NoteVARCHAR2(20)备注课程对应的系别表(School_Sub_Dep)课程ID(FK)Sub_IDNUMBER(9)课程ID系别ID(PK)Dep_IDNUMBER(9)系别 ID状态Sub_Dep_StateVARCHAR2(2)1为有效,0为无效学期Sub_ClassVARCHAR2(20)学期时间Open_DataDATA增加时间工号(FK)User_CodeNUMBER(9)添加工号备注NoteVARCHAR2(20)备注教职工表(School_Sys_User)名称User_NameVARCHAR2(20)名称代码(PK)User_CodeNUMBER(9)教职工代码密码User_PassNUMBER(9)教职工密码类型User_TypeVARCHAR2(20)1院长,2副院长,3系主任,4教导员,5教师,6招生办教师,7教授,8副教授,9其他联系电话User_ PhoneNUMBER(9)联系电话教职工状态User_StateVARCHAR2(2)教职工状态EmailUser_EmailVARCHAR2(20)邮件性别User_SexVARCHAR2(2)性别备注NoteVARCHAR2(20)备注学生资料表(School_Students_info)学生ID(PK)Students_IDNUMBER(9)学生ID学生名字Students_NameVARCHAR2(20)学生名字系别(FK)Dep_IDNUMBER(9)系别密码Students_PassNUMBER(9)学生密码学生状态Students_StateVARCHAR2(2)学生状态性别Students_SexVARCHAR2(20)性别地址AddressVARCHAR2(20)地址国家CountyVARCHAR2(20)国家城市CityVARCHAR2(20)城市生日BirthdayDATE生日电话PhoneNUMBER(9)电话父母ParentVARCHAR2(20)父母籍贯ParentAgeVARCHAR2(20)籍贯备注NoteVARCHAR2(20)备注学生资料历史表(School_History_info)学生ID(PK)Students_IDNUMBER(9)学生ID学生名字Students_NameVARCHAR2(20)学生名字系别(FK)Dep_IDNUMBER(9)系别密码Students_PassNUMBER(9)学生密码学生状态Students_StateVARCHAR2(2)学生状态性别Students_SexVARCHAR2(20)性别地址AddressVARCHAR2(20)地址国家CountyVARCHAR2(20)国家城市
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 图纸专区 > 大学资料


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!