大连理工大学专业学位硕士学位论文
(6) 安全性:借助内置的Windows身份验证和基于每个应用配置,可以保持应用程序是安全的。
另外,在ASP.NET中取消了组件注册及DLL锁定,全面使用了XML配置文件,只需要执行复制文件的工作就能配置一个Web应用程序。另外,ASP.NET与Windows2000 Server/Advanced Server的完美组合,为中小型乃到企业级的Web商业模型提供了更为稳定、高效、安全的运行环境。 2.2.2 ASP.NET的关键技术
(1) 事件驱动:ASP.NET允许用服务器端控件取代传统的HTML元素,并充分支持事件驱动机制,不必考虑如何将服务器端的信息回送浏览器,当然,服务器端程序可以“直接”读取位于浏览器端的信息,程序设计人员也不必再为将浏览器的信息发送给服务器而大费周折了。
(2) 代码隐藏(Code Behind)技术:ASP.NET中引入Code Behind技术,通过使用Code Behind技术、用户控件、自定义控件和组件等方法,可以很好地将程序的执行代码和逻辑代码分开,两者互不影响,从面实现了结构化的Web页面设计。在ASP.NET中默认采用Code Behind技术编写程序代码,虽然文件数和每个文件的代码数有所增多,但是需要程序设计人员做的工作却大大减少了,而且更方便多个程序设计人员分工合作。
(3) 数据绑定(Data Binding)技术:在开发Web应用程序中,是否能简单、灵活的方式将后台数据显示在Web页面上,数据存取技术是一项很重要的功能,它决定了程序设计人员如何解决数据源和页面控制项之间的通信问题。虽然数据绑定技术在ASP中就有过,但是在ASP.NET中却得到了更进一步的发展,一些新的声明性数据绑定性语法允许程序设计人员不仅可以绑定到数据源,而且可以绑定到简单属性、集合、表达式或从方法调用所返回的结果中。
(4) 数据访问技术:ADQ.NET:无论是以简单文件、相关数据库,还是以其他的存储类型存在,几乎所有的网络服务都需要更永久性数据。为了更好地提供对数据的访问,在ASP.NET的服务框架中包括了Active Data Object+(ADO.NET)类库。ADO.NET由ADO发展而来,为连接的指针风格的数据访问,同时也为更适合于把数据返回到客户端应用程序的无连接的数据模板提供高性能的APIS流。目的是为基于网络的可扩展的应用程序和服务器提供数据访问服务。此项技术是专门为Web设计的,并且考虑了可伸缩性、无状态性和XML的设计问题。
(5) 面向对象特性:ASP.NET的程序设计和运行模式,与ASP有所不同,采用了“面向对象”的机制,并引入了面向对象的属性、事件和方法的新特性,促进了组件共享。
- 13 -
基于.NET的网络考试系统的设计与实现
(6) 多语言支持:ASP属于一种解释型的编程框架,它的核心是VBScript和Jscript,由于受这两种脚本语言的限制,它无法像传统编程语言那样进行底层的操作,如果要进行一些诸如Socket、文件等操作时不得不借助于C++、VB、JAVA等编写的组件,并且由于它是解释执行的,所以运行效率较低。面ASP.NET是一种编译型的编程框架,它的核心是NGWS runtime,除了和ASP一样可以采用VBScript和Jscript作为编程语言外,还可以用VB和C#来编写,这就决定了它的功能强大,可以进行低层操作而不必借助于其他编程语言的优势。
(7) 大型站点应用:.NET框架使用符合企业标准的协议和各种通信方式,使得在分布式计算中更加安全可靠,更加适合企业级的大型站点应用。
2.3 基于ASP.NET应用程序的开发环境
要进行ASP.NET应用程序的开发,首先就当建立ASP.NET应用程序的运行及开发环境,这就必需对系统的硬件和软件环境进行一定的配置[26]。 2.3.1 软件环境的要求和配置
(1) 操作系统:Window:2000系列/Windows XP Professional/ Windows Server 2003。 (2) 浏览器:IE5.0以上版本。 (3) Web服务器:ISS5.0以上版本。
IIS(Internet Information Services,即Internet信息服务器)是ASP.NET应用程序所必需的服务器平台。在安装Windows 2000 Server与Windows2003时,默认时会自动在系统中安装IIS5.0,但若是安装Windows2000 Professional与Windows XP Professional,则默认时并不会安装IIS,需要单独进行安装。
(4) 集成开发工具:Visual Studio.NET 2005。
Visual Studio.NET 2005是ASP.NET应用程序最优秀的集成开发工具,它提供了控件拖放、自动调试、语法自动检测等功能,能够快速地设计、开发、高度和部署ASP.NET应用程序,从而大大提高程序开发的工作效率。
(5) 数据库服务器SQL Server或Access。
对于一些较复杂的数据库应用,一般应安装SQL Server2000或SQL Server2005。 由于安装Visual Studio .NET需要较大的硬盘空间,对计算机的配置要求也比较高,用户也可以不安装Visual Studio.NET,而是通过单独安装“Microsoft Net Framework 2.0版可再发行组件包”,在该软件中包括了运行那些使用.NET Framework开发的应用程序时所需要的一切组件,可以主操作系统支持.NET框架,并让IIS具有.NET的能力。
- 14 -
大连理工大学专业学位硕士学位论文
该软件可从Visual Studio .NET2005的“系统必备光盘”中找到,也可从微软的官方网站下载安装。
如果要使用ASP.NET来开发SQL Server数据库应用程序,还需要安装MDAC2.7或更高版本。如果操作系统为Windows XP,则其中己经自带了MDAC2.7;如果操作系统是Windows 2000,则需要自行到微软官方网站下载安装MDAC。 2.3.2 硬件要求
对于程序开发来说,计算机的硬件配置越高越好,可以减少很多等待时间。影响开发效率的计算机硬件指标主要有CPU速度、内存大小和硬盘空间。在这里仅介绍安装Visual Studio.NET 2005时对系统硬件的要求:
(1) CPU:Intel Pentium II-class 450MHZ(最好为600MHZ以上)。
(2) 内存:操作系统为Windows 2000 Professional时,最少为96MB;操作系统为Windows2000 Server时,最少为192MB;操作系统为Windows Server 2003或Windows XP Professional时,最少为160MB。
(3) 硬盘:系统驱动器上需要900MB的可用空间,安装驱动器上需要3.3GB的空间,可选的MSDN Library文档需要额外的1.9GB的可用空间。
(4) 显示:1024*768分辨率以上,颜色设置为256色。
(5) 驱动器:CD版需要CD-ROM驱动器或DVD-ROM驱动器;DVD版需要DVD-ROM驱动器。
2.4 SQL Server2000数据库管理系统
2.4.1 SQL Server 2000的特点
SQL Server 2000[27]是微软开发的、被设计用来满足大型的数据处理系统和商业网站的存储需求,并满足个人和小型企业对易用性要求的数据库管理系统软件。作为当前应用及其广泛的数据库管理系统软件,SQL Server 2000可以完成以下主要功能:
(1) SQL Server 2000关系数据库引擎是一种RDBMS,它管理数据并将其存储在关系型表格中。每张表格代表了值得关注的对象,例如课程、学生或者试题等。每张表格所描述的对象的各个属性在该表格的各个列中列出;每张表格所描述的对象类型依次在该表格的各行中列出。当某个应用程序发出请求时,该关系数据库引擎就会在这些表格之间建立关联。这种关系数据库引擎主要的任务是维护数据的安全性、提供容错、动态优化性能、利用锁功能提供并行性,并确保数据的可靠性。
- 15 -
基于.NET的网络考试系统的设计与实现
(2) SQL Server 2000 Analysis Service提供了分析SQL Server 2000上的数据仓库和数据集中数据的工具。在实际的应用中,某些分析过程可能将花费很长时间才能完成,但SQL Server 2000可以周期性地从OLTP系统中汇总数据,并将其存放在事实和维度表中SQL Server 2000 Analysis Service从这些事实和维度表中得出数据,作为多维数据集,可被用来分析趋势和其他对制定周密的商业决策非常重要的信息。在SQL Server 2000 Analysis Service多维数据集中处理分析查询比对OLTP数据库中的详细数据执行相同的查询要快速得多。
(3) 灵活多样的应用程序支持。应用程序开发人员编写出多种不同方式访问SQL Server 2000 的客户端应用程序。一个客户端应用程序可以提交结构化查询语言(SQL)语句给关系数据库引擎,关系数据库引擎将结果以表格形式的结果集返回给该客户端应用程序,SQL Server 2000支持的专门的T-SQL,T-SQL支持SQL-92 ANSI标准的入口级别。它还支持很多自定义扩展,以及SQL-92 ANSI标准的中等和完全级别的某些特征。客户端应用可以使用通用的Windows数据访问接口,也可以使用HTTP协议发送T-SQL语句或X-path查询给关系数据库引擎,还可以使用ADO或OLE DB的多维扩展将多维表达式 (MDX)查询发送给SQL Server 2000 Analysis Service的多维数据集,用于决策支持查询。
(4) SQL Server 2000的数据转换服务(DTS)允许用户从某个数据源中获取数据,对数据执行简单或复杂的转换,然后将其存储在另一个数据源中。DTS可与所有能使用DB访问的数据源一起工作,包括SQL SERVER、QRACLE、INFOMIX、DB2、ACCESS数据库、Excel电子表格,以及SQL Server 2000多维数据集。通过DTS可以简化建立和维护数据仓库的过程,并使其自动进行。
(5) SQL Server 2000的复制服务可以使得个人或工作组能够方便地获取数据,从而提高他们的效率和自主能力。使用SQL Server 2000的复制服务还可以将数据复制到数据仓库,在所有支持OLE DB访问的数据源之间来回复制数据。
(6) SQL Server 2000自然语言查询提供了一个开发客户端应用程序的系统,允许终端用户用自然语言提出问题,而不是用T-SQL语句或X-path查询形成的查询。自然语言查询可以用来访问OLTP数据库或SQL Server 2000 Analysis Service多维数据集的数据。
(7) SQL Server 2000的元数据服务(Meta Data Services)允许对有关数据库和客户端应用程序的元数据进行存储和管理服务。SQL Server 2000、SQL Server 2000 Analysis
- 16 -
大连理工大学专业学位硕士学位论文
Service、SQL Server 2000 English Query以及Microsoft Visual Studio都使用元数据服务存储元数据,与其他工具交换元数据,给支持元数据创建的工具增加版本管理能力。
SQL Server 2000在建立中大规模的数据库系统时,完全能满足存储、加工和组织数据的要求。作为一个关系数据库管理系统,它有多种可用的版本,以满足不同的用户和环境的需要,它紧密地集成了Windows 2000及Windows NT,充分吸纳了它们的能力并提供了额外的安全性能,优化了SQL Server 2000的性能。 2.4.2 SQL Server 2000安全体系结构
就目前而言,绝大多数DBMS应用程序都还是运行在某一特定的操作系统平台下的应用程序,SQL Server也不例外,SQL Server的安全体系结构[28]可以划分为4个等级,其安全体系结构如图2.4所示。
数据库对象数据库对象访问权数据库数据库访问权限操作系统用户安全客户机SQL Server验证服务器
图2.4 SQL Server的安全体系结构 Fig. 2.4 SQL server's security architecture
(1) 客户机操作系统的安全性:在使用客户机通过网络实现对SQL Server服务器的访问时,用户首先要获得客户机操作系统的使用权。操作系统安全性是操作系统管理员或网络管理员的任务。由于SQL Server采用了集成Windows NT网络安全性的机制,所以使得操作系统的安全性的地位得到提高,但同时也加大了管理数据库系统安全性和灵活性的难度。
(2) SQL Server的登录安全性: SQL Server的服务器级安全性是建立在控制服务器登录账号和密码的基础上。SQL Server采用了标准SQL Server登录和Windows NT登录两种方式,无论是使用哪种登录方式,用户在登录时提供的登录账号和密码,决定了用户是否能获得SQL Server的访问权。
- 17 -