基于asp的设计与实现

2023-06-07

第一篇:基于asp的设计与实现

基于ASP的电子商务网站的设计与实现

本文由sangatsu27贡献

pdf文档可能在WAP端浏览体验不佳。建议您优先选择TXT,或下载源文件到本机查看。

第 !" 卷第 #! 期 第 !" 卷第 #! 期 $%&’!" (%’#! 企 业 技 术 开 发

)*+,(-.-/0+1. 2*$*.-34*() -5 *()*63607* !889 年 #! 月 2:;’ !889 基于 "#$ 的电子商务网站的设计与实现

朱明娥

(中南林学院, 湖南 长沙 "#888" )

摘 要: 文章介绍了 173 技术及 173 与 12- 结合起来连接、 访问数据库的方法, 讨论了 173 环境下电子商务网 站的设计及实现问题。 关键词: 电子商务; ; 网站; 购物车 173 数据库; 中图分类号: 文献标识码: 文章编号: ( 5@#A’A? 1 #88?<=>A@ !889 ) #!<888><8A %&’ (’)*+, -,( .’-/*0-1*2, 23 456277’.6’ 8’9 )*1’ *, "#$ ZHU Ming-e

(Central South Forestry University, Changsha, Hunan 410004 , China)

"9)1.-61: This paper analyses the ASP techniques, the method of connecting and accessing database with ASP and ADO, it discusses the design and realization of E-commerce web site in ASP. :’;82.(): E-Commerce; ; ASP database; web site; shopping cart

随着 0BC:DB:C 的不断普及,人们对于互联网技 术的要求已不单单是浏览一下网页,收发电子邮 件, 日益忙碌的人们开始追求足不出户的利用互联 网这一强大的平台来实现的网上购物。对于企业来 讲, 无论是企业之间 E C% E) 还是企业和客户之间 ( , (E C% +) 的交易, 如果能够实现网上交易将大大提 高交易速度、 节约交易成本。电子商务的发展, 必将 对人类的经济, 生活模式产生一种全新的变革。本 文建立的电子商务网站采用的是模式为浏览器 F 服 务 器 E F 7) 式 , 客 户 通 过 数 据 连 接 来 调 用 后 台 ( 模 即 数据库中的数据。 这些内置对象可以使脚本更加强大,这些对象允许 从浏览器中接受和发送信息。

#173 可以用另外的组件来扩展。 173 本身就 是来源于相当数 量 的 标 准 服 务 端 1;CGH:U 组 件 , 这

些组件允许做诸如依据浏览器能力进行不同显示以 及在浏览器内包含计数器的功能。不过程序员不会 局限标准的 1;CGH:U 组件, 您可以创建附加 1;CGH:U 组件。 $173 可 以 和 诸 如 1++*7

7、 7V. M:DH:D 这 样 的数据库进行挂接。这是 173 一个非常强大的功能

所在, 高级的动态更新站点都需要数据库的支持, 而 且需要随数据库内容的更新而自动更新, 这样, 用户 就可以利用 173 自己建立很多类似的高级站点。 以上 " 个特性对 173 进行了限定, 173 就是由 ! "#$ 也 “动 态 173 全 称 是 1;CGH: 7:DH:D 3IJ: , 就 是 服务器端页面” ,是一种运行于 K:L 服务器端的程 序语言。通过 173 程序, 我们可以实现众多动态的、 交互性的服务器功能。 173 是在业界巨头 4G;D%M%NC 公司的支持下成长起来的一种服务器端脚本语言, 具有开发简单、 向对象等特点, 也是其所以能 面 这 够在全球流行的前提。 173 有如下 " 个重要特征,使之具备很强的通

用性: 可以利用$E7;DGOC !173 可以包括服务端脚本, 和 PIHIM;DGOC 来创建 173, 创建动态内容的网页。 ( "173 提 供 了 一 些 内 置 1OO&G;ICG%B, 7:MMG%B, 。利用 6:QR:MC, 6:MO%BM:, 7:DH:, -LS:;C+%BC:TC 对象)

收稿日期: !889<8=<#> 作者简介: 朱明娥 #>?= —) 女, ( , 湖南双峰人, 大学本科, 副教授, 主 要从事计算机科学与技术方面的教学与研究。

7:DH:D 端脚本,对象以及组件拓展过的 标 准 主 页 。 173 脚本的后缀名为 ’IMO,当客户端访问一个后缀 名为 ’IMO 的 W6. 时,该 W6. 请求就被送到 K:L 服 务器上, K:L 服务器于是调用相关的 173 引擎 IMO’ 从而生成相应的 ,)4. 代 X&& 来将该脚本加以解析, 码,该代码由 K:L 服务器返回给客户端浏览器执 行, 于是用户就在屏幕上看到了该 ’IMO 执行的结果, 其工作原理如图 # 所示。

图! "#$ 的工作原理 $" 企 业 技 术 开 发 !""# 年 $! 月 ! 系统开发的模式

网络应用结构模型采用 % & ’ 模式, 该模式是把

件。所以在设计过程中不但要把所必需的数据字段 加到数据库中而且要加入一些可以方便控制数据 的字段, 来增加数据库的完整性和安全性。 ! 本网站用的是 E;;)’’ 数据库,库中有多个

实现开 ()% 技术和数据库技术结合起来的新技术, 发环境和应用环境的分离, 用户端用相对统一的浏 览器代替客户软件, 实现跨平台的应用。

数据表, G0GH01 表, 即 记录用户信息; 订单 I1>01 表, 表; 表, 新闻信息; 管理员信息; 80J 7<01 表, J510 表, 商品类型; 订单明细 I1>01>035?@ ) ( 等等。 " 数据库的连接方法。在需要与数据库进行连

% & ’ 结构的编程语言分成浏览器端编程语言和 服务器端编程语言。浏览器端包括: ( *+,- *./012 、 ( 3043 ,5167/ -5897590: 超文本标记语言 );’’ ;5<2 层叠样式表单)B5C5’=1?/3 语言 、 =5>?89 ’3.@0 ’A003<, 和 D%’=1?/3 语言。所谓的浏览器端编程语言就是这 些语言都是被浏览器解释执行的。 *+,- 和 ;’’ 都 是由浏览器解释的, B5C5’=1?/3 语言和 D%’=1?/3 语言 是在浏览器上执行的。 在浏览器端使用 B5C5’=1?/3 编写程序,在服务 器端采用 E’F 平台, 再建立数据库, 这样 % & ’ 体系 就完整了。

接的所有页面的设计上, 我采用

KLMM N?8=@7>0 O?@0PQRR & ?8=@7>0 & H6=I88R5

H6=I88R5?G =I88, =I88<31 ’

象调用数据库操作的方法 ( =I88<31PQU%VPQW<01C01RG5//53A Q65<08R5<5Q ) ; WQ U0O57@3U?1P; UXYD)XPZ,?=1IH); 指定数据库的连接方式, 和数据库源文件位置’ 如 Q’ 果你的服务器采用较老版本 E==0<< 驱动, 请用下面 连接方法 ’ =I88<31 PQ U1?C01 PZ<]@ <01C01 ; P<5; P<5; 7?> /J> " 总体设计

本系统分为两个系统: 前台用户子系统和后台

管理子系统, 每个子系统都能实现若干功能。 ! 前台用户子系统:用户经登录的密码验证进

入网站后, 可以选择要使用的功能。有如下功能可 供选择: 查询所需产品、 购买所需产品、 查看产品新 闻、 查看帮助页面、 留言板留言、 修改密码。 " 后台管理子系统:管理员经登陆的密码验证

后进入后台管理子系统后,可以选择要使用的功 能。有如下功能可供选择: 商品管理、 购物结算、 留 言管理、 闻管理、 他操作 上传图片)操作管 新 其 ( 、 理, 系统的总体结构如图 ! 所示。 >535H5<0P=0I5 ; <01C01P=0!Q <03 =I88 P<01C01R=10530IH^0=3 (Q EU_U%R;_‘2 ‘);+Y_‘Q) 调用数据库的 _F)‘ 方法, =I88RI/08 =I88<31 ’

建立数据库连接 TS $ 电子商务网站的实现

本人利用 U105GJ05C01 软件对网页进行布局和

设计。 U105GJ05C01 是一个所见即所得的网页编辑 器, 它提供了代码、 拆分、 设计 a 种视图方式。而在 所有 E’F 页面中, 购物车是整个电子商务网站面向 客户的最核心部分, 用户在购买商品时必须用到的 就是购物车, 它能让顾客清楚的看到自己所选购的 商品及价格, 用户可以对购物车内的商品任意进行

图! 系统结构图

删除操作。下面对所有 E’F 页面中处理最为复杂的 购物页面的实现进行讨论。 不难理解, 购物车实际上是顾客在购物过程中 用来存放所购物品信息的一个临时缓冲区, 因此它 必须存在于购物的整个周期, 即在顾客登录网站时 自动创建 (此时为空) ,在购物过程中不断增删变 化, 次结算并发送完订单后清空, 待下一次购 每 等 # 数据库设计与连接

因为数据库的设计影响深远, 不但对系统开发

者有着极大的影响而且也可能会在今后的应用过 程中造成不可挽回的损失, 数据的正确关系到整个 系统的正常运作, 也是系统能够正常工作的前提条

第 !" 卷第 #! 期

朱明娥: 基于 $%& 的电子商务网站的设计与实现 ## 物, 顾客离开网站时自动撤消, 且要求同时参 当 并 与购物的顾客的购物车相互独立。为达到这些目 的, 我们在技术上采用了 $%& 中的 ’(’’)*+ 会话) ( 对 象和 ,-*./-0/’/ 文件。 %(’’)*+ 对象当会话开始时即 被创建, 话 结 束 时 撤 消 , 里 的 会 这 “会 话 ” 简 单 地 可 理解为访问网页, 而且对同一网站, 不同的访问, 它 们拥有各自的 ’(’’)*+ 对象, 所以在此我们就可以将 不同的顾客拥 一个 ’(’’)*+ 对象看作是一辆购物车, 有各自的购物车, 且, 在购物车中存放购买的 并 为 商品, 括 它 们 是 什 么 , 多 少 、 钱 等 , 们 需 要 包 买 价 我 在 ’(’’)*+ 中定义一些数据结构或变量来存储这 些 信息, 因此, 我们选择在 ,-*./-0/’/ 文件中用程序来 创建它们。1-*./-0/’/ 是一个在网站主页被访问时即 自动执行的文件, 通常做一些初始化操作, 且该文件 必须放置在网站的23*4(5目录下, 即与主页同一路 径。购物车程序 ’6*78/9:0/’7 数据流程如图 ; 所示。

(+E ’>. 2 N ’89)7:5 " 购物车程序

当客户订购某一商品, 即点击 “订购” 链接, , 就 会运行 ’6*78/9:0/’7 程序, 将商品号、 购买数量等购 物数据存放到 ’(’’)*+ 变量,用 ’(’’)*+ (J8/9:F/9()O 存 用 ( 存 E/9J ) 放 商 品 号 , ’(’’)*+ J8/9: F/9(H:I/9J ) 放 购物数量。并根据用户选择商品号购物数量, 以表 格形式显示在客户浏览器端。由于客户选购的商品 和数量是动态的, 所以存放商品、 数量的 ’(’’)*+ 变 量采用数组方式。 购物车程序 ’6*77)+, 0/’7 基于服务器端, 需要 根据客户端发送来的数据, 动态生成相关的网页发 送到客户端, 此, 客户端向服务器端发送数据 因 在 时,必须通知在服务器端 ’6*78/9: 0/’7 应该发送何 种类型的网页。 这就是在激活 ’6*78/9:0/’7 程序时需 要参数 4*E( ” “ 的原因。

# 收银台程序

客户电子货架通过购物把选购的物品放入购 物车之后,客户有 " 种选择“调整数量” 放弃购 、 “ = 买” 继续购物” 去收银台” 、 “ 、 “ 。处理 “去收银台” 方 法如下 = 图" 购物车数据流程 2)+7>: -/+,>/,(?J@.’89)7:J +/4(?J..J ( *+8--8P?JF)+E*F+/@),/:( B’6*7E(’P0/’7B ) J:I7(?J .>::*+J@/->(?J 去收银台J5 用户单击 “去收银台” 命令按钮, 服务器端的收 银 台 程 序 ’6*7E(’P 0/’7 向 客 户 浏 览 器 发 送 不 同 的 网页。 ! 购物车初始化

用户访问商务网站,就会运行 ,-*./- 0/’/ 文件 中 ’(’’)*+<*+’:/9: 事件过程,因此把与购物车相关 的 %(’’)*+ 变量初始化放在 %(’’)*+ *+<’:/9: 事件过 程。,-*./- 0/’/ 程序清单= ! 结 语

经过测试, 台的网页运行正常, 现了商品 前 实 2’89)7: -/+,>/,(?@.’89)7: 9>+/:?’(9@(95 ’>. %(’’)*+A*+’:/9: B 定义一个 CD 的子过程 ( , ( 分 E)4 F/9()E G)F/9(H:I G) B定义两个数组,

别存放商品号和购买数量 ( ? F/9(#E G) JJ B初始化置空 F/9(H:IKGL?G ’(’’)*+ (J8/9:F/9()E/9J ) ?F/9()E B 将定义的两 个数组赋给 ’(’’)*+ 对象 ( ’(’’)*+ J8/9:F/9(H:I/9J ) ?F/9(H:I ( ’(’’)*+ J4(4.(9)EJ) ?JJ B保存顾客的会员号 ( ’(’’)*+ J’:*:/-J) ?G B保存总价 ( ’(’’)*+ J*47-(:(J ) ?M/-’( B 标识当前一批物 品是否已发送过订单 ( ’(’’)*+ JE.-*,)+J) ?JE’+?(.E/:/J 的动态显示, 客可以方便地进行选购, 台管理 顾 后 方便, 整个网站结构美观大方, 操作简便, 即使刚刚 开始接触网上购物的用户也可以很快地进行网上 交易。本网站可以为中小型现代企业开发电子商务 网站提供参考。 参考文献:

Q#R 陈国柱 0 电子商务世界 QSR0 北京 = 电子商务杂志社, !GG!0 刘克海 0 面向中小企业电子商务网站 的 模 式 探 讨 QTR0 Q!R 高宏, 管理论坛, ( !GGG , #G ) 0 Q;R 刘 小 东 0UVW$SXW$CWV SY 入 门 与 提 高 实 用 教 程 QSR0 北京: 中国铁道出版社, !GG;0 但 张 Q"R 宣 小 平 , 正 刚 , 文 毅 0$%& 数 据 库 系 统 开 发 实 例 导 航

QSR0 北京 = 人民邮电出版社, !GG;0 1

第二篇:基于ASP技术的网上购物系统的设计与实现

本文由豹龙一号贡献

pdf文档可能在WAP端浏览体验不佳。建议您优先选择TXT,或下载源文件到本机查看。 E-business 电子商务

《中国商贸》 CHINA BUSINESS&TRADE 基于ASP技术的网上购物系统的设计与实现

河北建筑工程学院 李凤云 张家口市第一建筑工程有限公司 安志文

摘 要: 论文参考了目前国内电子商务的发展情况和运营模式, 介绍了ASP ADO技术, 探讨了基于ASP ADO技术实现网上购物的主要过 程及实现。 尤其是对其核心功能-购物车的设计实现进行了重点介绍。 关键词: 电子商务 网上购物 购物车 ASP Web 数据库 中图分类号: 文献标识码: 文章编号: F49 A 1005-5800(2009)08(b)-070-02 IT技术及互联网的结合使商务活动从形式到内容都区别于以 往的经济活动, 电子商务正以人们无法想象的速度在全球范围内飞 快地成长着, 它使人类社会进入到依靠网络空间和 “虚拟化” 运作 的电子商务时代。 许多企业将电子商务列为最重要的交易手段以获 取竞争的机会, 试图取得竞争的空间和获胜的机会。 新经济下成功 的企业必然具备支持其谋求竞争优势的电子商务系统, 也就是在 互联网上拥有自己的专业网站并能够在此基础上开展电子商务、 网 络营销等商业行为。 顾客期望在极大的商品选择空间中以最小的 代价达到需求的满足, 企业与供应商、 经销商和消费者在新的商业 环境下形成了新型的交易关系。 购物网站是电子商务网站的一种基本形式。 网上购物系统是 在网络上建立一个虚拟的购物商场, 不仅有利于企业树立自己的网 上品牌, 宣传企业形象, 减少流通环节开支, 增加企业员工的工作 效率、 有效地控制 “商场” 的运营成本, 减少管理费用。 还可以使客 户更方便, 更快捷地挑选商品, 低成本类比和旁比也极为便利, 足 不出户地付款和交付等使购物过程变得轻松、 快捷, 很适合现代人 快节奏的生活。 网上销售网站的构建类型有商家和商家之间的电子商务活动 (B2B)、 商家与顾客之间的商务活动(B2C)及消费者对消费者的电 子商务(C2C )。 目前国内已有多家这样的网站, 如当当网上书店等。 鉴于百货商场的经营性质和赢利方式, 该系统通过B2C型网站来实现。 网或内联网传送HTTP请求到Web服务器, 该请求在Web服务器 通 执行一个表单所指定的ASP程序, Web服务器执行ASP文档, 过ODBC驱动程序, 连接到支持ODBC的数据库上, 执行ASP文 档所指定的SOL指令, 最后将执行结果以HTML格式传送给用户 浏览器。 ASP使用两个ADO组件对象来访问和操纵数据库, 即用 Connection对象来连接数据库和增加、 删除、 更新数据库的数据 等, 用Recordset对象来返回数据库访问的结果。 ADO为ASP提供了完整的Web数据库访问解决方案, 使用 ADO编写紧凑简明的脚本, 以便连接到ODBC兼容的数据库, 脚本 中可使用VBScript、 JavaScript语言来控制数据库的存取与查访结果的 输出显示画面。 应用ADO访问数据库文件前, 要建立几个数据库或数 据源, 设置DNS, 连接并打开相应的数据库, 然后设置并执行SQL命令 来完成相应的任务, 再用ASP语句返回结果, 最后关闭数据库。 1.3 系统的安全性 网上购物环境中, 用户与Web服务器组成了一个星形网, 客户 浏览器与服务器之间通过HTTP协议进行通讯。 由于HTTP协议是 非连接的, 即客户发一个请求, 服务器响应并发送数据后, 连接断 掉。 因此, 一个关键的问题是服务器如何确定一个请求是由哪个用 户发出的。 解决这些问题要给合法客户一个标记。 服务器通过客户 的用户和密码来验证是否是合法用户。

2 基于ASP的网上购物系统的设计与实现 1 ASP技术

1.1 ASP及其运行环境、 开发工具 ASP(Microsoft Active Server Pages)是微软开发的一套实现 Web 服务的服务器端脚本环境, 也称为动态网页, 是一系列对象 和组件的集合。 ASP文件就是嵌入了可执行脚本的HTML文档, 将 HTML和Active控件结合起来, 以产生和执行动态的、 交互的、 高性 能的Web服务器应用程序, 扩展名为. asp。 ASP 源代码由脚本语言、 内置对象、 组件三个部分组成。 ASP作为一种动态Web 技术, 它是 既提供ASP 源代码的语法规定, 也提供使得嵌入了ASP源代码的 asp 网页文件得以运行的相应的Web 服务器程序。 1.2 ASP与ADO结合实现数据库的连接和访问 1.2.1 ASP与ADO结合连接数据库的方法 A DO可连接多种数据库, 包括SQL Ser ver、 Oracle等支持 ODBC的数据库。 ASP结合使用ADO建立提供数据库信息的主页, 让用户在浏览器页面中操作。 要插入、 更新、 删除后台数据库, 则通 过ADO在Web服务器上设定ODBC数据源来进行。 1.2.2 ASP与ADO结合访问数据库的方法 ASP与ADO结合起来实现数据访问的基本原理: 当用户端浏 览器的表单所要求的资料已输入并按下确定按钮后, 经过互联 2.1 系统的设计 该系统开发用Dreamweaver4.0设计开发网页, 用SQLServer2000 开发后台数据库, 用Visual Inter Dev 6.0完成动态网页。 系统包括如 下功能: 商品展示发布、 购物车、 会员服务、 后台管理。 在该系统中, 前台用户可通过页面浏览查询, 后台管理可以管理产品价格、 简介、 样图等多类信息。 前台可将产品分为几大类别, 浏览者可按类别、 名 称、 价格等关键字对产品进行搜索查询, 查询结果列表显示。 后台 设置管理员维护界面, 可对每个产品信息进行编辑, 设定产品图片, 可按产品的类别、 型号、 内容等对产品进行查询、 修改、 增加、 删除, 对产品类别实现动态管理。 在后台维护界面添加类别、 添加产品品 种, 前台即可实时显现。 通过网络数据库的引用, 可方便、 快捷、 高效 地更新网站信息。 数据库主要包含会员信息表、 商品类别表、 商品 表、 订单表和订单明细表等。 2.2 系统的实现 2.2.1 购物车Shoppingcar.htm是商务网站功能的核心, 也是电 子商务过程的核心 该页面帮助用户在生成订单之前确认自己所买的商品。 用户在 浏览商品目录时选购的商品均在此页中显示并且包含商品的名称、 数量、 单价, 在所有商品列表后面还显示了购物商品的总量及总价 70 《中国商贸》 CHINA BUSINESS&TRADE E-business 电子商务

消费者网络信任传递模式分析

江汉大学文理学院 杨宗辉

摘 要:信任是商务交易的基石, 但由于电子商务交易环境的虚拟性和匿名性, 使得电子商务中的失信现象频频发生, 而在线交易的缺乏 诚信成为电子商务进一步发展的主要障碍。 本文试图通过对电子商务消费者信任路径的影响因分析影响消费者的信任传递模式。 关键词:网络消费者 信任传递 信任主体 中图分类号: F49 文献标识码: A 文章编号: 1005-5800(2009)08(b)-071-02 提供一个产品和服务, 大部分情况并不是自己一个人完成的, 而需 要很多相关实体的协作。 因此, 影响消费者网络信任的主要实体有 消费者, 相关的参照消费者, 网络商店, 网络商店利益相关方, 网络 信任评估机构, 网络购物环境。 其中消费者在对网络商店的信任关 系中, 消费者是信任主体, 而网络商店是信任对象。 在信任主体当 中, 同样需要对网络商店作出信任判断的还有消费者用来作为参 考的其他消费者, 他们的意见将很大程度上影响相关消费者的信 任态度。 而作为网络商店关联方的产品供应商、 完成整个交易过程 的合作方以及网络商店的投资方, 消费者对于他们的评价也将从 参考的角度来影响消费者和网络商店之间的基本信任关系。 另外, 一些第三方的独立网络信任鉴定机构对于网络商店的评价更是消 费者在最初作出判断的主要依据。

从电子商务信任的理论研究角度来看, 由于涉及和研究信任现 象的领域很多, 因而存在着许多有关信任的观点。 在实际应用中, 缺 乏信任被认为是目前电子商务潜力没能充分和有效发挥的主要障 碍之一, 尽管许多国家在法律和安全方面都采取了一些措施, 但用 户仍没有获得实施电子商务所必需的信任, 这就要求辅助以其他 的措施和方法来解决电商务中信任问题。 目前的学者有通过对信 任影响因素的研究, 了解影响信任的因素, 为电子商务企业提供指 导。 也有对电子商务信任机制的探讨, 希望能为政策制定者提供有 价值的参考信息。 1 文献综述

在电子商务信任研究中, 涉及到心理学、 行为学、 市场营销、 信 息技术等多个领域。 song(2005), 通过实证研究表明, 促销、 服务、 外部个人资源、 导航及易用性、 购买便利性等Web设计特征将加强 Web用户的信念, 从而通过对态度的影响导致其行为的变化。 我国 的严中华等(2003)在对国外学者的相关研究进行总结的基础上着 重针对制度信任及其框架模型做出了一定的理论研究, 提出了基于 制度的信任模型。 3 信任传递理论探讨

信任传递是一种认知过程, 当信任主体基于对信任目标相关 的一些其他实体或环境背景的信息而不是直接基于信任目标的相 关信息来作出对信任目标的信任态度的初始判断时, 我们称这种 认知过程叫信任传递 (trusttransfer)。 对于信任的传递我们在日常 生活中有很多直观的经验, 比如我们对另一个高信任度对象的信 任通过他们二者之间的某种联系传递给了我们还不熟悉的另一个 信任对象。 这时候我们没有足够的用来判断我们信任对象的信息,

2 影响消费者网络信任的主要实体及相互关系分析

在网络零售电子商务的环境下, 消费者和网络商店之间的互动 和交易关系牵涉到众多相关的实体。 网络商店要想完成对消费者 格, 商品数量这一栏是用一个默认值为1的复选框显示的。 该页面 下面有三个按钮供用户选择,分别是 “继续挑选商品” “重新计算” 、 、 “去结算中心”用户按 。 “继续挑选商品”则购物车中的东西将暂时 , 保存, 转向商品信息页面products.htm。 “重新计算” 则页面显 按 , 示的内容基本不变, 只是将价格重新计算一下再显示出来。 如果用 户确认购物车里的商品, 就可以按 “去结算中心” 转向付款页面 , caser.htm。 2.2.2 购物ASP页面的实现 设置Global.asa文件, 完成初始化; 创建对数据的连接字符串 并保存在Session对象中; 创建购物车; 重定向至主页home.asp文 件; 保证从主页开始浏览; 获得要被执行的ASP脚本文件的虚拟路 径。 设置一些变量, 创建数据库连接; 将购物车中当前商品数目保 存在Session对象中; 用Session对象中保存的连接字符串连接数据 库; 设置购物车中订购的商品的初始属性, 存放在Shoppingcar,设 置并执行SQL数据库查询语句, 并将查询结果保存在RS对象中; 接 着根据用户在购物页面Shoppingcar.htm单击的按纽不同做相应的 处理; 如果是 “继续挑选商品”则显示当前这件商品的订购数量, , 并 回到商品信息页面products.htm; 如果选择 “重新计算” 按钮, 则重 新计算所有订购商品的价值和总价值; 如果单击 “生成订单” 按钮, 具体代码略。 则对新用户转向新注册页面new.htm,

3 结语

购物类网站是一个功能复杂、 花样繁多、 制作繁琐的商业网 站, 但也是企业或个人推广或展示商品的一种非常好的销售方式。 本文就ASP技术开发网上购物系统作了探讨, 并进行了设计。 该网 上购物系统主要包括前台页面和后台管理页面。 在前台消费者可 通过页面浏览查询, 浏览者可按类别、 名称、 价格等关键字对产品 进行搜索查询, 查询结果列表显示。 后台设置管理员维护界面, 可 对每个产品信息进行编辑, 也可按产品的类别、 型号、 内容等对产品 进行查询、 修改、 增加、 删除, 对产品类别实现动态管理。 在后台商 品信息的维护, 前台可实时显现。 通过网络数据库的引用, 可方便、 快捷、 高效地更新网站信息。 采用ASP技术是实现动态可交互式的Web信息管理系统的便 捷方法, 它也必将成为企业在互联网上大显身手所不可缺少的技 术手段。 参考文献

[1] 唐东.Web数据库开发进阶[M].北京:人民邮电出版社,2004. [2] 林志强.ASP电子商务设计实务[M].北京:中国铁道出版社,2005. [3] Visual lnterdev6.0网络编成技术[M].人民出版社,2003. 71

第三篇:基于ASP.NET的教务管理系统的设计与实现 摘要

教务管理系统为满足高校日益繁杂的教务工作,提升信息的流通速度,增 加师生间的沟通和交流,提高各个部门的工作效率而开发的管理信息系统。教务 信息管理系统是融合管理科学、信息科学、系统科学和网络技术为一体的综合性 先进管理手段。该系统是基于B/S(浏览器/服务器)模式的信息管理系统,选用

ASP.NET+SQL Server 2000数据库进行开发。全文设计开发的教务管理系统结

合了面向对象的编程思想,其开发主要包括后台数据库的建立和维护以及前端应 用程序的开发两个方面。通过系统实现,用户可以在网络环境下直接访问操作权 限范围内的各项信息。

在开发系统过程中,严格按照软件工程的开发理念,采用了基于先进的统 一建模语言.IdML的面向对象技术进行系统的分析与设计。UML是一种对面向 对象系统进行可视化、详细描述、构造和文档化的规范建模语言。特别是在统一 建模过程RUP出现后,UML的应用更加广泛。UML可以应用在软件工程的每 个阶段,本文使用Rational Rose 2003对UML中涉及到的视图进行建模。 本文详细阐述了基于UML的面向对象的系统分析与设计、数据库设计以及 UML模型向关系数据库的映射方法。在数据库的需求分析中,使用Microsoft Visio进行E.R图的建模。在需求分析中,详细分析了系统所面向的用户对系统 的功能需求,基于此需求,确定参与者及参与者所感受的系统服务或功能单元, 经过多次迭代和细化后建立需求模型,制品为用例图。在用例视图基础上,进入 系统分析阶段,识别系统全部的类,建立类图,并对每一个类判定其构造型,建 立系统分析阶段的静态模型。为了描述系统各对象在执行期间不同时间点是如何 动态交互的以及结果如何,建立系统分析阶段的动态模型,包括序列图和协作图。 在系统设计阶段,对系统进行分层和刻画子系统,本文所论述的教务管理 系统共分为学生登录模块、教师登录模块、教务管理员登录模块和教材管理员登 录模块。其中教务管理员登录模块中,又分为学生信息管理、师资管理、网上选 课、工作量计算、教学计划管理等几个模块,是整个系统的开发重点。数据库设 计阶段,依据数据库三种模式之间的两种映射关系,将对象模型向数据库模式映 射,建立数据库模型。

本文建立了较为完整的UML模型,对各个开发过程中的分析与建模作了较 充分的阐述,为应用软件提供了清晰的解决方案,因而,本论文对使用UML进 行软件开发的读者具有一定得参考价值和实用价值。

关键词:教务管理系统;统一建模语言;面向对象;ASP.NET

The Des i gn and I mp I ementat i on of Educat i ona I Adm i n i st rat i on System Based on ASP.NET Abstract The educational implementation system is planed for the satisfaction of the increasingly complex educational administration work in tmiversity, for the promotion of the information circulative speed,for the increasing contact and communication between teachers and students,as well as for the improvement of working efficiency amony different branches.The educational administration system is such comprehensively advanced management methods as administrative science,

information science,systematic science and network technique,all routed into one.

The system is established by the information administration。which is based on the B/S model,and selects the data base ofASP.NET+SQL.Server2000 to apply.Focus of the thesis is to design the educational administration system,and employs the typical administrative system by the theory of objects·oriented.The development includes two aspects:the establishment and reservation of the backstage data base;the development of front applied programs.By achieving this system,users can directly visit all kinds of information、析m in the authority of operation under the netwok environment.

During the process of development,the thesis bases strictly on the concept of software project,and makes systematic analysis and design,aimed the technology of directed objects on UML.Uniform Modeling Language(UML)is the one to visible, fully describe,build and docnmentalizc for objects-oriented,especially applied in Rational Unified Process.UML Can be used in stage of software engineering project,

therefore,the thesis models the views related to UMLby using Rational Rose 2003.

In the practice of systematic design,the thesis fully elaborates the objects-oriented, the plan for the data base and the mapping methods from UML to relational data base. And it also models the E—R diagram with the help of MicrosoR Visio,in the demand analysis of data base.Furthermore,it analyses the functional demands of the users in the system,defines the system services or function units enjoyed by interparticipants,

establishes the needed models and detailed division.division.On the basis of the Use Case Diagram,the thesis enters the stage of systematic analysis,distinguishes all the classes诵tll in the system,establishes the Class Diagram,judges the structure of each class,and finally builds the static models in the stage.In order to describe how the objects interact dynamically in different period of time,the thesis continues to establish the static models in systematic analysis stage,including Sequence Diagram and Collaboration Diagram.

It is because of the stratification and carving sub—system that the educational administration system in this sense Can bc divided into students login model,teachers login model,educational administrators login model and teaching material

administrators login model is the focus of administrators login model.The educational development for the whole system,among which can be divided into such models as students information management,teach management,optional courses on line,work load calculation,teaching plan management,and SO on.In the state of designing data base,it shines upon the data base model from object models and establishes them in view of 2 mapping relations among the 3 models in data base.

To skim up,the thesis has established completed UML models,elaborated the analysis and models in the process of exploitation in details,and provided clear solutions to the applied software.Therefore,it is of great help and value to the reads who are intended to develop software by using UML.

Key Words:Educational Administration System;Uniform Modeling Language;0bject-Oriented;ASP.NET

O引言

近年来随着教育普及,高校教育体制改革,各高校扩大招生规模,使得在校 学生人数有了突飞猛进的发展,办学规模逐渐增大,专业设鼍日趋多样化,招生 人数逐年增加,教学计划不断更新,这使得高校教务管理的工作量大幅度增加。 并且,随着教育改革的深化,教学管理模式也在发生变化,如学分制的逐步实行、 学生可以自主选课等。这就对原有的教学管理模式提出了更高的要求。另一方面, 随着计算机网络技术的发展,校园网引进各个高校,为无纸化办公提供了有利条 件。在这样的形势下,开发一个集成化的教务管理系统不仅势在必行,而且成为 一个紧迫的任务。

由于国内各高校的教务管理模式不尽相同,不同学校的实际教务管理情况各 有自己的特点,因而各高校需要针对自己的教务管理模式和特点建立自己的教务 管理系统。教务管理包括对教学资源——如教室、办公用品等的管理,新生注册 和学籍的管理、各学期学生成绩的管理、教学培养方案的执行、教学计划的安排、 学生考试的管理、教师评教以及工作量的计算等大量信息。如何高效率的进行管 理,并且有序的存放和处理这些巨大的信息,并使之成为教学管理分析和决策的 手段,为教学活动产生更好的促进作用,是教务管理信息系统主要功能。 教务管理系统是以管理信息系统为理论依据的。管理信息系统的发展伴随着 软件工程的发展而日趋成熟。不断增长的复杂性、多样性和相互关联性是当今管 理信息系统的共同特征。而开发一个管理信息系统往往要结合软件工程的理念, 使用系统化的方法进行管理信息系统的开发,从而更能有效地控制程序复杂性, 减少系统的不合理,减轻维护成本。

从技术层次上,软件工程是从一系列建模任务开始的,由这些任务产生出软 件完整的需求规格说明和软件设计的表示。80年代末期,当面向对象程序设计 语言产生后,人们将面向对象的软件建模方法引入到软件工程的各个阶段。并迅 速发展成为当代软件界研究的热点课题之一。这种开发方法是一种运用对象、类、 继承、封装、聚合、消息传送、多态性等概念来构造系统的软件开发方法【11。面 向对象的程序设计立意于创建软件重用代码,它通过在程序中加入扩展语句把函 数“封装"进编程所需要的“对象’’中。从本质上来讲软件开发就是对软件所要 处理的问题集进行正确的认识,并把这种认识正确地描述出来。面向对象的软件 开发就是直接面对问题集当中客观存在的事物来进行软件开发。

面向对象的开发方法的精髓是从不稳定的需求中分析出稳定的对象,以对象 为基础来组织需求、构架系统【2】。这种开发方法包括面向对象分析和面向对象设

计。

面向对象分析的目的是认知客观世界的系统并对系统进行建模,那么就需要 在面向对象分析过程中根据客观世界的具体实例在问题中准确、具体、严密的分 析模型。如图O.1所示为面向对象的分析过程。

图O一1面向对象的分析过程

面向对象的设计是把分析阶段得到的需求转变成符合成本和质量要求的,抽 象的系统实现方案的过程。设计的准则包括模块化、抽象、信息隐藏、低耦合和 高内聚等特征【11。

公认的面向对象建模语言出现于20世纪70年代中期,从1989~1994年,其 数量从不到十种增加到了五十多种。建模语言中用的最广的是Booch的Booch 9

3、Jacobson的面向对象软件工程(OOSE)和Rumbaugh的对象建模技术 (OMT-2)。面向对象建模方法出现以来,各种面向对象的分析与设计方法的主 导思想以及所采用的主要概念与原则大体上是一致的,但是也存在不少的差异。 统一建模语言UMLCOnified Modeling Language)lE是为结束这种差异的局面应运

而生的。

1994年10月,Grady Booch和Jim Rumbaugh开始致力于这一工作。他们首

先将Booch 93方法和OMT-2方法统一起来,并于1995年10月发布第一个公开

版本UML0.8。1995年秋,OOSE创始人Ivar Jacobson也加入了。三人共同致力 于设计统一建模语言,他们同面向对象方法学的创始人共同合作,为这项工作注 入了强大的动力,打破了面向对象软件开发领域内原有的平衡。目前UML得到 了诸多大公司的支持,如IBM、HP、Oracle、Microsoft等,已成为面向对象技 术领域内占主导地位的规范化建模语言,并且已被OMG组织采纳的建模语言规 范。Booch、Rumbaugh和Jacobson在一些文献中经常被称作“三个好朋友"(three amigos)【3】。UML的发展过程如图0.2所示。本文所论述的系统在需求分析、系 统分析与设计阶段,都采用UML进行建模。

图0-2 UML的主要发展历程

被OMG采纳的UML只是一种建模语言,并不包含对软件开发过程的指导。 在讨论UML时,人们往往谈论到统一过程(Rational Unified Process,RUP)。 RUP是一个最佳软件开发实践,根据字面理解,可以知道RUP包括3方面的意

思,即Rational、Unified和Process。Rational表示RUP是由Rational公司开发

并维护的;Unified表示RUP采用了现代软件工程开发的6项最佳实践:Process 表示RUP是一种软件开发过程14】。Rational统一过程的动态结构是通过对迭代式软件开发过程的周期、阶段、迭代过程以及里程碑等的描述来进行表示的。

本文基于UML建模方法对我校教务管理系统做了较深入的分析,并基于物 理模型进行了系统的设计与实现。对于建模的工具的选择,本文选择Rational Rose,它提供了UML的所有建模元素的可视化编辑环境,并提供了基于组件的 开发以及对软件开发全过程的支持。除了支持UML的类图、交互图、组件图和

配置图外,Rational Rose是一个独立的工具,通过应用程序接口(API)层与市

场主导的各种IDE结合来支持各种编程语言和其他实现技术【51,从而全面支持面

向对象分析、设计和编码。Rational Rose支持软件系统的面向对象的开发,它通

过用例图、逻辑类图、序列图等支持面向对象的分析和设计,在不同的视图中建 立相应UML图形来反映系统的不同特征。

在开发工具的选择上,本文采用了新的ASP.NET技术,结合.NET框架所支 持的VB语言来实现教务系统的各项功能。ASENET不仅仅是下一版本的Active Server Page(ASP),它还是统一的Web开发平台,方便开发人员开发企业级W曲

应用程序。它是一个已编译的、基于.NET的环境,可以用任何与.NET兼容的语 言创建应用程序。另外,任何ASENET应用程序都可以使用整个.NET框架,并 且可以无缝地与HTML编辑器及其他编程工具一起工作。这使Web开发变得更

加方便。

数据库的开发工具上,选用SQL Server 2000开发环境。SQL Server2000是能 够支持企业级关系型数据库的管理系统,它能与Windows操作系统紧密集成, 具有方便易用的图形管理界面,其用户界面风格与Windows一样非常友好。SQL Server2000在存储大容量数据方面,在数据的安全性和完整性方面,在分布式处 理等都是适合于企业级应用的。而其相对Oracle,DB/2等大型数据库来说,学 习更为容易,应用成本也相对较低。采用SQL Server2000+ASP.Net开发本系统 是一个较为理想的组合。

综上所述,开发这样一个系统不但可以降低工作量、提高办公效率,而且使 目前分散的教务信息得到集中管理。这对减轻教务工作负担、提高教务管理水平、 实现教务管理的现代化具有重要意义。 论文分为引言、正文和结束语三部分。

引言部分简要地论述了当前高校管理信息化的必要性、高校教务管理系统开 发的重要意义以及高校教务管理系统开发所使用的技术。 正文部分共分4章,其内容安排如下:

第一章:需求分析与建模。本章对教务管理系统进行需求分析,逐步对系统 分析细化,找出参与者和用例等,作出Use Case图。在用例图的基础上,从现 实或原型方面来透视的系统,进一步作出系统的静态模型。还有表示对象类之间 的通信及对话的动态模型。

第二章:系统概要设计。阐述了系统体系结构,和为什么选择采用B/S模式。 介绍了系统实现基于的三层架构,即数据访问层、业务外观层和页面层。最后对 系统的层次和模块进行细化。

第三章:系统详细设计。对数据进行全面分析,得到E.R图,建立数据库表, 完成存储过程的设计。举例介绍了系统中类的设计,以及几个代表性的功能模块

的设计思想。

第四章:系统实现。本文所论述的系统是用ASP.NET+SQL Server开发的。 在这一章中主要是对笔者负责的部分,进行阐述。并以UML建模为基础,实现

系统功能。

结束语对本文工作进行简明扼要的总结,并指出本文存在的不足和改进方向, 以及对未来的展望。

本文的创新性在于结合我校教务工作的实际问题,有针对性的对教务工作的 各个环节进行UML建模,从对象模型到动态模型再到系统功能的建模,让系统 分析更全面,系统实现更完善。系统实现采用三层架构,即数据访问层、业务外 观层和页面层。在业务外观层扩展出业务规则层,数据层扩展为数据存取层和存 储过程层,使业务逻辑与用户界面分开,增加程序的可扩展性和可维护性。

1需求分析与建模

需求分析是软件开发过程的重要环节,是软件开发的基础,通过与用户的反 复沟通,勾勒出系统的框架,需求分析的好坏决定了软件设计的成败,好的需 求分析也能减少资金的浪费。

1.1功能需求

教务管理系统系统主要是为完成日常教学任务而开发的,其主要目标是对学 生个人信息、师资信息、教学资源信息、课程信息、学生成绩信息等进行管理 及维护,减轻教学工作的压力,提高教学管理工作的效率。

通过对学校教学管理的业务调查,得知教务管理人员可通过此系统实现对学 生和教学资源的管理与维护,学生可以通过此系统进行个人信息、考试成绩查 询以及完成选课等相关功能,教师可以通过此系统完成个人信息管理、学生成 绩输入、教学任务查询等等功能。系统的总体任务是实现整个教学信息管理的 系统化、规范化和自动化。

在日常教学工作中,教务处有整体规划和辅助教学的任务,各个院系上报的 教学任务和教学计划都要上报给教务处,由教务处根据上报的材料分配教学资 源,如教室等,并且安排教师上课时间和上课的周次,然后再将教师上报的教 材征订单传达给教材科,由教材科根据开课学生人数订教材。教务处还要将一 切安排妥当的事宜公布在网络上,以供教师和学生查询。

因此,该系统主要的使用对象是教务管理人员、学生、教师和系统维护人员。 这些使用者对教务管理系统的功能要求是不同的。 (1)教务管理人员对功能的需求 ·学籍管理

功能包括:学生注册、学生基本信息管理(包括添加、删除和更新学生信息, 可按姓名或学号查询学生信息)、学籍变动管理、毕业管理等。 ·师资管理

6功能包括:各专业课教师个人基本信息管理、教学任务发布、教学工作量管

理、考评考核管理、科研管理等。

●选课管理

功能包括:教务管理人员依据教学计划和培养计划,设置选课课程并统计生 成己选课学生名单等。

●教学计划管理

功能主要包括:根据培养计划和各个专业上报的教学计划,添加各专业教学 计划,包括教学计划的修改删除等操作。

●成绩管理

功能包括:每门课程结束后,由教师进行成绩登记,然后教务管理人员对登 记的信息进行管理,如教师登录成绩后发现成绩有错误,只能由教务管理人员 核实后进行修改。还有根据成绩就算出学生的学分,以便学籍管理的需要。

●课程管理

功能主要有:安排各个专业所开设课程的上课时间和上课教室。 (2)教材管理人员功能需求

功能包括:教材的基本信息的管理(按书名或作者等查询各专业教材、添加 修改删除教材信息等)、统计教材数量、教材费用、教材的入库和出库管理等。

(3)学生对功能的需求

学生有两类,分别是本科生和研究生。每一类学生对于功能的要求还是有区 别的,如研究生有科研和论文的内容。在本文中,只分析了本科生的功能需求。 ·个人信息管理

功能包括:浏览个人基本信息,具体内容包括姓名、性别、学号、民族、出 生日期、籍贯、所在专业班级等,这些信息是以学籍管理表中的信息为准,所 以不允许学生自行更改,只能进行查询。还包括个人课表查询,成绩查询等。 ·更改系统登录信息

功能包括:学生登录系统后,修改登录信息,为了保证系统的安全性,只要 求学生修改个人密码。

● 网上选课

功能包括:网上查看可选课程,添加、删除所选课程等功能。

7(4)教师对功能的需求

●个人基本信息的维护

功能包括:教师基本信息的添加和修改等,如出生日期、毕业学校、学历和 学位等信息,但是职工编号和姓名是不允许教师在系统中进行修改的。 ·教学信息查询

功能包括:教学任务查询、教学自然班名单下载打印、教学质量评价查询和 工作量计算结果的查看等。 ●学生成绩录入

功能主要包括:本学期学生考试成绩的录入,一旦用录入密码录入成绩成功 后,就不能任意修改学生成绩,必须由教务处管理人员修改。 (5)系统管理员的需求

系统管理员主要是对教务管理系统进行维护和更新,并保证系统的安全性, 以及数据库的安全性。

从以上可以看出,各种人员对于系统的需求是不同的,对于学生来说,教务 人员的操作是不能使用的,也是不可见的,所以要在用户登录系统时,就做出 判断该用户可以使用哪些功能,这就需要设置不同的登录权限。系统管理人员 具有最高的权限,可以添加、删除用户,并可设置和修改不同的用户权限。因 此在数据库设计中,要有权限的定义。

权限的定义其实是系统安全性的一种需求,采用身份认证机制对一般用户进 行管理,以教工号和学生学号来判断登录者的权限,并且以这两种身份来判断 登录者是否该校的校内人士,如果是校外人士,则具有浏览这样的最低权限。 系统的安全性需求还有另外一方面内容——数据安全性,对于数据库服务器, 要避免系统崩溃等意外事件发生而导致数据全部丢失,常用的方法是采用 RAIDS磁盘阵列,其次是对数据库系统提供完全、增量等多种备份方式,如把 数据定期刻成光盘保存。对于数据安全性,本文不做详细的阐述。

根据以上对系统的功能的分析,我们可以大体总结出系统的一个大概框架和 系统应该分为哪些子系统。根据所完成的功能和用户角色的不同,我们将系统 分为教师子系统(完成教师登录后的功能)、学生子系统(完成学生登录后的功 能)、教务管理子系统(完成繁杂的教务工作的功能)和教材管理子系统(完成 教材有关的功能)四个子系统。在这四个子系统中又可以划分出多个小模块, 例如,教务管理子系统是一个非常大的子系统,我们将它再次细化,可以分成 学生学籍管理模块、网上选课模块、教学计划管理模块、课程管理模块等。用 一个系统结构框图来表示,如图1.1所示。

图1.1教务管理系统总体框图

1.2用例图

图1.1教务管理系统总体框图

需求获取阶段的主要工作是建立待开发系统的模型。本文中采用统一建模语 言对系统的需求进行建模,UML的用例和用例模型是建立这种需求模型的合适 方法。

系统需求建模是为描述系统需求而建立的相应模型,其重要性在于:通过系 统模型可评估系统构件及其相互关系,确定需求如何适应其布局,以及评估系 统的“美学’’等方面【31。

在计算机图形学中,有一句名言,叫做“一幅图顶得上一千个字’’。同样的 道理,在软件开发过程中,模型的重要性也十分明显,它可以达到以下目的: >使用模型可以加强人员之间的沟通

>使用模型可以更早的发现错误或疏漏的地方

>模型为最后的代码生成提供依据 >使用模型可以更好的理解问题 >使用模型可以获取设计结果

面向对象的软件建模方法主要从面向对象程序设计领域演变发展而来,它是 对象问题域进行完整的映射的过程。 “对象"的主要特征包括如下内容:

(1)它包括了事物的数据特征和行为特征,对象是系统中用来描述客观事物 的一个实体,具有它自己的静态特征和动态行为,是构成系统的一个基本单位。 (2)它通过封装、继承、消息通信等原则使问题域的复杂性得到控制。 (3)它用聚合和链接如实反映问题域中事物间的关系,“任何两个对象之间 的关系都包含其中一个对另一个的假设”。

正是拥有上述特征,从而使面向对象建模方法能够完整和直接的映射出问题 域,所以其在模拟现实世界方面具有天然的优势。

UML是用图来进行“说话”的,图是UML的关键。用UML开发的图在软 件开发生命周期(SDLC)的每个阶段中起着关键的文档作用。此外,你可用 UML来开发基于任何SDLC模型的软件系统【6】。 1.2.1用例图概述

用例视图指出系统提供给每个利益相关者的功能。由于UML中的各个构件 和概念之间没有明显的划分界限,为方便起见,选用视图来划分这些概念和构 件。视图只是表达系统某一方面特征的UML建模构件的子集。用例视图是视 图中的一种。用例视图约束其他视图,在建模过程中居于非常重要的位置。项 目开始时,项目小组就可以在用例视图中生成业务模型。开发者既可以把用例 视图用于构建一个新系统的功能视图,还可以把已有的用例视图修改或扩充后, 产生新的版本,也就是在现有的视图上加入新功能(即在视图中加入新的执行

者和用例)。

用例图是把满足用户需求的基本功能聚集起来的强有力的工具。对于正在构 造的新系统,用例描述系统应该做什么;对于已经构建完毕的系统,用例则反 映了系统能够完成什么样的功能【71。用例图包括用来描述最终用户、分析人员 和测试人员的角度所看到的系统行为的用例。

用例图的基本组成部件是用例、执行者和系统。用例用于描述系统的功能, 也就是从外部用户的角度观察系统应支持哪些功能,帮助分析人员理解系统的

行为,即站在系统外部看系统功甜引。在用例模型中系统仿佛是实现各种用例 的黑盒子。我们只关心该系统实现了哪些功能,并不关心内部的具体实现细节。 用例模型主要用于工程开发的初期,在进行系统需求分析时使用。 用例模型由用例图构成。用例图中显示执行者、用例和用例之间的关系。 1.2.2建立用例图

建立Use Case图可以按下列步骤进行: (1) 确定系统范围和边界

所谓系统的边界是指系统与系统之间的界限。系统同时又是相对的,在这里, 我们只说明第一次迭代的系统边界。教务管理系统以教学计划的实施为线索, 对教务管理实行一体化操作,涉及学籍管理、教学计划管理、课程管理、选课 管理、成绩管理、教师管理、教材管理等。这些内容都属于教务管理系统的职 责范围。而学校的其他管理工作,如人事、财务、资产等管理不属于该系统的 职责范围。虽然有系统边界的存在,但是使用Rational Rose画图并不画出系统

边界。

(2)确定主要参与者

参与者(Actor)是指存在于系统外部并直接与系统进行交互的人、系统、子系 统或类的外部实体的抽象。参与者有自己的目标,通过与系统的交互达到目标。 参与者包括人参与者(Human Actor)和外部系统参与者(System Actor)。在与系统 打交道的人员中,凡是直接使用系统的人员可以确认为人参与者;凡是与系统 相联,并与系统交互的外部系统,可以确认为系统参与者。

一个参与者可以参与一个或多个Use Case,而一个Use Case可以有一个或 多个参与者运行。在本系统中确定教务管理员、教材管理员、学生、教师和系 统管理员为活动者。 (3)确定用例

用例(Use Case)是参与者可以感受到的系统服务或功能单元。它定义了系

统是如何被参与者使用的,描述了参与者为了使用系统所提供的某一完整功能 而与系统之间发生的一段对话。每一个用例都是一个参与者与系统交互中执行

的有关事务的序列【9】。虽然用例描述了活动者与系统交互中的对话,但是,它 只描述了该做些什么,并不描述该如何做。全部的用例构成了对于系统外部是

可见的行为的描述。应当根据系统需求找出全部的用例,并从参与者的角度给 出事件流和用例执行时系统可以提供给参与者的服务。

在教务管理系统中,我们可以确定以下一些主要用例:学生管理(学生基本 信息的维护)、师资管理、课程管理、教学计划管理、选课管理、成绩管理、教 材管理(教材信息查询,教材的入库和出库等),系统维护等。 本文只列出几个主要的用例图加以介绍。 ①系统管理用例 >创建新账号 >设置账号基本信息 >查看账号

>删除账号 >系统维护和更新

建立用例图,如图1.2所示,

图1.2系统管理员用例图

②教务管理用例

由于教务管理的事务繁琐复杂,因此功能的划分就很细致,用例数目就比较 多。我们先列出顶层用例,然后再将粒度大的用例进行分析。 >登录系统 >学生学籍管理 >教学计划管理 >选课管理 >课程管理 >师资管理 >成绩管理

建立教务管理顶层用例图,如图1.3所示。然后将粒度大的用例进行进一步 分析,例如,师资管理工作,可以包括教师信息管理、评教情况、工作量计算、 科研情况等。每一项工作都可以作为功能的细化,而看作是一个用例。因此, 以师资管理为例,将教务管理顶层用例进一步细化,如图1.4所示。 将顶层的用例模型进一步细化,划分为粒度小的用例,以便深入分析系统的 要求和目标,这一过程也是迭代过程【101。对顶层用例图逐步分解,精细化,直 到能清晰的表达问题,满足系统分析与建立模型的需要。又如,图1.5所示为 细化后的网上选课用例。

图1-3教务管理顶层用例图

图l-4师资管理三次迭代后的用例图

图1.5选课管理用例图

③学生用例 >登录系统 >个人信息管理 >成绩查询 >网上选课

建立学生用例图,如图1-6所示。

图1.6学生用例图 ④教师用例 >登录系统 >个人信息管理 >登录成绩 >教学任务查询 >教学班名单打印 >教材查询

建立教师用例图,如图1.7所示。

图1.7教师用例图

⑤教材管理用例

>登录系统

>教材信息管理 >入库

> 出库

建立教材管理用例图,如图1.8所示。

图1.8教材管理用例图

161.3静态结构模型

系统的静态结构模型主要由类图和对象图表达。类图从抽象的角度描述系统 的静态结构,而对象是类的实例化表示,对象图是系统静态结构的一个快照⋯l。 对象图和类图类似,也是表达系统的静态开发视图,但它是从现实或原型方面 来透视的,说明在类图中所发现的事物实例的数据结构和静态快照。当要在动 态建模的交互图中表示动态场景的一个静态画面时,可以使用对象图来重现系 统中存在的实例以及它们之间的相互关系。类图展示了一组类、接口和协作及 它们间的关系,建模中所建立的最常见的图就是类图。 类图中包含了三方面的信息:

(1)对象类:对象类简称类,是面向对象模型最基本的模型元素,类有属性、 操作、约束以及其他成分等。“属性”描述类性质的实例所能具有的值;“操作" 实现类的服务功能,它可以被本类的对象请求执行,从而发生某种行为。 (2)用户接口:用户和系统交互的界面,它也可以用类表示。

(3)联系:表示类之间的关系,这种关系可以有多种,关联、依赖、泛化、 聚合都是非常重要的联系。

在建立静态模型时,首先要对类进行识别,类的识别通常是由系统分析员在 分析问题域的基础上来完成的,它是面向对象开发中一项困难较大的活动【12】。 对类的识别,通常的方法是从用例中来识别。用例图实际上就是一种对系统描 述的形式,因此,可以根据用例图来识别类。

所有被识别的类只包括三种构造型中的一种:边界类(Boundary Class)、实 体类(Entity Class)和控制类(Control Class)。使用类的构造型可以方便的对 类进行分类。按照类的识别顺序,首先识别出系统的实体类,然后进一步识别 出边界类和控制类。

实体类(Entity Class):实体类的信息和行为通常存在较长的时间,实体类 是现实问题的抽象,这种类型的类通常对应现实世界中的实体,或者需要执行 系统的内部事务f13】。例如学生、教师、教材等。而且每个实体类在数据库中都 有相应的表,实体类的属性对应数据库表中的字段。表1.1列出了教务管理系 统中一些重要的实体类。

边界类(Boundary Class):负责系统与系统外部环境的通信。位于系统与外 界的交界处,工作在系统和角色之间【81。因此,通常又被称为“接口类”。包括 所有窗体、报表、打印机和扫描仪等硬件接口以及与其他系统的接口。在教务 系统中的边界类有,用户登录界面、学生基本信息管理界面、教师基本信息管 理界面、教学工作量信息管理界面、科研情况管理界面、学生成绩管理界面、 教学计划管理界面、选课界面等等。

控制类(Control Class):负责协调其他类的工作,通常其本身并不完成任何 功能,其他类也不向其发送很多消息,而是由控制类以委托责任的形式向其他 类发出消息。将教务管理系统中的业务逻辑抽象为以下的一些控制类,如表112 所示。

表1-2教务管理系统中的控制类

对类进行分析完毕接下来,就可以建立初步分析模型。例如,教材管理中, 类的初步模型如图1-9所示。

图卜9教材管理用例类的初步建模

课程管理中,类的初步模型如图1.10所示。

教材

图1.10教材管理用例类的初步建模

选课记录

根据初步建模图,确定各个类的属性和方法后,再次建模,如图1.11所示

图1_11确定了属性和方法的类建模

根据己定义的类及其联系,以及对象类的多重性、角色、导航等性质,可以 画出对象类图。如图1.12是教务管理系统的主要类及其关系。 图1.12教务管理系统主要的类及其关系图

所有系统均可表示为两个方面:静态结构和动态行为。类图最适合于描述系 统的静态结构:类、对象以及它们之间的关系,而状态、时序、协作和活动图 则适合于描述系统的动态行为,即描述系统中的对象在执行期间中不同时间点 是如何动态交互的。

系统中的对象需要相互通信,通常情况下,~个消息就是一个对象激活另一 个对象中的操作调用【141。对象是如何进行通信以及通信的结果如何,则是系统 的动态行为,也就是说,对象通过通信进行协作及对象在系统的生命期中改变 状态的方式是系统的动态行为。一组对象为了实现一些功能而进行通信称之为 交互。交互图(Interaction Diagram)是用来描述对象之间以及对象与参与者之 间的动态协作关系以及协作过程中行为次序的图形文档,它包括序列图

(Sequence Diagram)和协作图(Collaboration Diagram)两种形式。序列图着

2l重描述对象按照时间顺序的消息交换,协作图着重描述系统成分如何协同工作。

序列图和协作图从不同的角度表达了系统中的交互和系统的行为,它们之间可 以相互转化。 (1)序列图的建立

序列图(Sequence Diagram)是由对象、生命线、激活和消息等构成。序列 图的目的就是按照交互发生的一系列顺序显示对象之间的交互【31。 下面列出学生选课的序列图,如图1.13所示。教学计划管理的序列图,如 图1.14所示。

图1.13学生选课基本事件序列图

基于ASENET的教务管理系统的设计与实现 图1.14教学计划管理基本事件序列图

图1.15学籍管理模块添加成绩序列图

序列图作为一种描述在给定语境中消息是如何在对象间传递的图形化方式, 在使用其进行建模时,可以将其用途分为以下3个方面。

·确认和丰富一个使用语境的逻辑表达:一个系统的使用环境就是系统潜

在的使用方式的描述,也就是它的名称所要描述的。一个使用环境的逻 辑可能是一个用例的一部分或是一条控制流。

● 细化用例的表达:序列图的主要用途之一就是把用例表达的需求转化为

进一步、更加正式层次的精细表达。用例常常被细化为一个或者更多的

序列图。

●有效的描述如何分配各个类的职责以及各类具有相应职责的原因:可以

根据对象之间的交互关系来定义类的职责,各个类之间的交互关系构成 一个特定的用例。例如,“用户对象向地址对象请求其街道名称"指出 用户对象应该具有“知道其街道名’’这个职责。

(2)协作图的建立

协作图(Collaboration Diagram)是由对象、消息和链等构成【15J。协作图通 过各个对象之间的组织交互关系以及对象彼此之间的链接,表达对象之间的交 互。

与序列图不同的是,在协作图中明确表示了角色之间的关系,通过协作角色

来限定协作中的对象或链。另一方面,协作图不将时间作为单独的维来表示, 所以必须使用顺序号来判断消息的顺序以及并行线程【2】。序列图和协作图表达

的是类似的信息,虽然它们使用不同的方法表示,但可以通过适当的方式将它

们进行转换。

将图1.13和1.14中的序列图转换为协作图,分别见图1.15和图1.16。

1.15学生选课协作图

协作图作为一种在给定语境中描述协作中各个对象之间的组织交互关系的 空间组织结构的图形化方式,在使用其进行建模时,可以将其作用分为以下三 个方面:

·通过描绘对象之间消息的传递情况来反映具体的使用语境的逻辑表达: 一个使用情景的逻辑可能是一个用例的一部分或是一条控制流。这和序 列图的作用类似。

●显示对象及其交互关系的空间组织结构:协作图显示了在交互过程中各 个对象之间的组织交互关系以及对象彼此之间的链接。与序列图不同, 协作图现实的是对象之间的关系,并不侧重于交互的顺序,它没有将时 间作为一个单独的维度,而是使用序列号来确定消息及并发线程的顺 序。

·表现一个类操作的实现:协作图可以说明类操作中使用到的参数、局部 变量以及返回值等。当使用协作图表现一个系统行为时,消息编号对应 了程序中嵌套调用的结构和信号传递过程。

2系统概要设计

经过需求分析后,对于系统是“做什么"已经清楚了,这一章的内容主要讨 论系统“怎样做"116]。总体设计的基本目的就是回答“概括地说,系统应该如 何实现?"这个问题。设计工作集中在细化阶段结束、构造阶段之时开始。它 将产生合理、健壮而稳定的构架,创建实现模型的蓝图‘171。

2.1系统体系结构

教务管理系统是由Web后台进行统一管理,所有业务逻辑都集中在Web应 用程序中管理和制定,具有数据的添加、搜索和查询统计等功能,客户端的分 布广泛,数据集中处理,因此在设计时充分考虑各种体系结构的优缺点,B/S 结构对异种机、异种应用的连机、连网及统--N务具有很好的作用,因此选择 B/S结构进行开发实现。

B/S模式是三层结构体系,对比过去C/S结构,B/S在客户机和服务器之间 增加了一个Web服务器。当客户端发出请求时,由Web服务器向数据库服务器 取出数据并计算,然后将计算结果返回给客户端,用户通过安装在客户端的浏 览器浏览计算结果。在B/S模式下,客户端只需装上浏览器以及相应的操作系 统、网络协议软件即可,而所有应用软件的开发、维护、升级等工作由服务器 承担【18】。B/S模式是三层结构体系如图2.1所示。

图2-1 B/S的三层结构体系

教务系统的软件开发在B/S体系结构基础上,程序设计过程采用三层架构, 即数据层,业务外观层和页面表示层(应用层)。将UML建模使用到体系结构 的设计中来,也是本论文的一大创新点。

页面表示层表示软件界面,包括大量控件,并以事件为触发机制,在事件响 应程序中调用业务外观层中的接口完成相关操作。图2.2表示了页面表示层与

其它层的交互。

图2—2页面表示层交互图

业务外观层将用户界面和业务功能的具体实现分割开,对业务规划层和数据 访问层的所有调用必须通过此层进行。一般将业务外观层扩展出业务规则层, 业务外观层就位于Web层与业务规划层之间,主要完成与Web层交互以及在对 “业务规则"层的调用之间维护临时状态【191。图2.3表示了业务外观层与其它 层的交互。

图2-3业务外观层交互图

数据层为业务外观层和业务规则层提供数据服务,并解决数据存取的问题。

对数据库的操作全部封装到对数据库服务器端的存储过程层调用中【191。图2.4 表示了数据层与其它层的交互。

图2—4数据层交互图

2.2系统模块划分 图2—4数据层交互图

在第一章的需求分析中,初步将本系统划分为4个子系统,每一个子系统面 向不同的用户。接下来在概要设计中,要将这四个子系统进一步细化,细化成

低耦合、高内聚的模块。

系统的总体框图在需求分析中已经列出,具体查看第一章的图1.1。根据总 体框图继续将框图中的每一个模块进一步细化。细化的结果按照模块独立性原

理来进行验证。

模块独立的概念是模块化、抽象、信息隐藏和局部化概念的直接结果【16】。模 块的独立程度可以由两个方面度量,分别为内聚和耦合。耦合强弱决定模块间 接口的复杂程度,接口越简洁,临界值的测试也越容易,不但是程序不容易出 错,后期维护成本也会降低。内聚是衡量一个模块内部各个成员彼此结合的紧 密程度,理想内聚的模块只完成一件任务。

按照软件工程中的这一理论,将教务管理系统进行细化。 (1)学生子系统

学生子系统是学生身份登录后所使用的功能,按照功能的不同,将学生子系 统进一步细化,如图2.5所示。

图2.5学生子系统细化后结构图

(2)教师子系统

教师子系统面向的是普通教师,根据需求分析得到的结果,将教师子系统进 行多次细化后得到如图2-6的模块结构。 (3)教材管理子系统

教材管理实质是教务管理的一部分,但是由于其管理对象与教务管理的工作 对象有很大差异,属于一种教学资源的管理,因此将教材管理从教务管理中划 分出来作为一个单独的子系统。其用户为教材科管理员,登录后不进入教务管 理界面,而进入教材管理界面。按功能细化后的模块结构如图2.7所示。

图2-6教师子系统细化后结构图

图2-7教材管理子系统细化后结构图

(4)教务管理子系统

教务管理子系统是所有子系统中功能最复杂的一个子系统,涉及了整个日常 教务和教学工作。将该系统第一步细化,按功能分成学生学籍管理、师资管理、 选课管理、教学计划管理、成绩管理和课程管理六个大的模块,如图2.8所示。

图2-8对教务管理子系统二次细化

二次细化后的模块并不是最优模块,每一个模块都完成若干项工作,因此还 要再次细化。下面依次列出多次精细化后的模块结构图。 ① 生学籍管理

图2-9学生学籍管理结构图

②师资管理

图2.10师资管理结构图

③教学计划管理 图2-ll教学计划管理结构图

④学生选课管理

图2-12教学计划管理结构图

⑤学生成绩管理 生成绩管理结构图

⑥课程管理

2-13学

图2.14课程管理结构图

综合以上结构图,可以发现,在每个子系统中都包含了数据的一些基本操作, 如添加记录、删除记录、修改记录和数据统计等,还有报表的制作、打印等常 见的功能。根据面向对象思想,可以将这些程序代码进行封装,增加代码的重

用。

3系统详细设计

详细设计阶段的根本目标是确定应该怎样具体的实现所要求的系统【16】。这一 阶段应该得出对系统的精确描述。

3.1数据库设计

数据位于信息集成系统的中心,是信息系统的灵魂,因此,数据库设计直接 影响着数据库系统的性能以及整个教务管理系统的功能。所以数据结构应该是 稳定的,变化的只是处理过程。本系统在侧重信息需求的同时兼顾处理需要, 这个设计按照关系模型和第三范式理论,直接面向数据设计。 数据库设计有如下三个基本阶段:

>需求信息的收集一一与客户、最终用户以及公司中定义数据库需求的管 理者进行调研的过程。收集的信息主要有,业务如何处理、业务规则、 当前所使用的数据库信息等。

>数据建模一一通过可视化的方式分析业务数据,并最终将业务模型转换 为数据模型的过程。所产生的数据模型用来创建表、视图和数据库所需 的其他对象。

>数据库设计和规范化一一业务模型转换为物理模型的过程。并减少冗余 数据。

ANSI/SPARC模式规定,数据库可分为三层:内模式、中间模式和外模式【201, 简单的说,数据库模式是指数据库中一组相关对象。在模式结构中,对象之间 并不是互相独立的,它们之间存在相互关联的关系。它统一地考虑了所有用户 的需求,并把这些需求所涉及的记录、记录间的联系有机地结合为一个整体, 描述概念模式的常用方法是E.R图(Entity.Relationship approach,实体-联系方 法)【19lo 外模式也叫应用软件接口,是数据库的外层,是与用户进行互动的一层。子 模式是模式的子集。外模式允许在用户应用软件和数据模型之间创建关系。

35内模式也叫物理模型,具体描述了数据如何组织并存入外部存储器上,处理

数据库的物理存储和数据访问。内模式一般由系统程序员根据计算机系统的软 硬件配置决定数据存储方式,并编制程序实现存取。

中间模式也叫逻辑模型,是数据库的基本模型,它主要处理用来定义数据库 结构的一些数据结构,例如,表和约束条件。

数据库三个模式之间存在两种映射,一是模式与子模式之间的映射,这种映 射把概念数据库与用户数据库联系起来,另一种映射是模式与内模式之间的映 射,这种映射把概念数据库与物理数据库联系起来【211。有了这两种映射,才把 用户对数据库的逻辑操作转换为对数据库的物理操作。 3.1.1数据库需求分析

用户的需求具体体现在各种信息的提供、保存、更新和查询,这就要求数据 库结构能充分满足各种信息的输出和输入。收集基本数据、数据结构以及数据 处理的流程,组成一份详尽的数据字典,为后面的具体设计打下基础。 仔细分析本系统的有关信息,设计如下面所示的主要数据项和数据结构:

●学生基本信息

包括的数据项有:学号、姓名、性别、出生年月、籍贯、政治面貌、学院编 号、专业编号、班级编号、家庭住址、联系方法、照片、备注等。 ·学院信息

包括的数据项有:学院编号、学院名称、专业编号、专业名称、各专业班级 编号、班级名称、班级人数等。 ·教师信息

包括的数据项有:员工编号、姓名、性别、出生年月、籍贯、政治面貌、职 称、学院编号、职务等。 ·课程信息

包括的数据项有:课程编号、课程名称、课程类型编号、理论学时、实验学

时等。

·教学计划

包括的数据项有:学院编号、专业编号、班级编号、课程编号、开设时间等。 ●教材信息

包括的数据项有:教材ISBN编号、教材名、作者、出版社、版次、库存量

等。

·评教信息

包括的数据项有:员工编号、评教时间、评教成绩等。 ·工作量信息

包括的数据项有:员工编号、计算学年、课程编号、理论学时、实验学时、 总工作量等。 ·科研信息

包括的数据项有:项目编号、项目名称、项目负责人、项目完成时间、项目 内容、获奖情况等。 ·选课信息

包括的数据项有:课程编号、教师姓名、最大人数、已选学生数等。 ●成绩信息

包括的数据项有:学生学号、课程编号、成绩、是否重修等。 ·系统用户信息

包括的数据项有:用户ID、用户权限、用户密码。 根据以上的数据结构和数据项,进行下面的数据库设计。

3.1.2 E.R图设计

E.R方法是一种用来在数据库设计过程中表示数据库系统结构的方法,又被 称为实体.联系模型。它的主导思想是使用实体(Entity)、实体属性(Attribution) 以及实体之间的联系(Relationship)来表示数据库系统的结构。

实体有描述其特征的属性,一个或多个属性表征一个实体。在E.R图中,实 体用长方形表示,属性用椭圆表示。

联系是指实体之间的关联,E.R模型清楚地定义了联系,每个联系都有名字。 联系的元是参加联系的实体的数目,大多数联系是二元的,有三种类型:一对 一联系、一对多联系和多对多联系。联系用菱形表示。

对关系数据库而言,就是要将E.R模型转换为关系模型,并对其进行优化。 将E.R图转换为关系模型实际上就是要将实体、实体的属性和实体之间的联系 转化为关系模型,这种转换一般遵循如下原则:

(1)一个实体型转换为一个关系模型。实体的属性就是关系的属性,实体的 码就是关系的码;

(2)一个一对一联系可以转换为一个独立的关系模型,也可以与任意一端对 应的关系模型合并;

(3)一个一对多联系可以转换为一个独立的关系模型,也可以与多端对应的 关系模型合并;

(4)一个多对多联系转换为一个关系模型;

(5)--个或三个以上实体间的一个多元联系转换为一个关系模型;

(6)同一实体集的实体间的联系,可以按照一对

一、一对多、多对多三种情 况分别处理;

(7)具有相同码的关系模型可合并。 3.1.3系统的E.R模型

教务管理系统中对于学生信息管理、选课管理以及成绩管理的相关功能在第 一章的需求分析和建模中也做了详细说明。这几个子系统中所涉及到的角色主 要是教务管理人员、教师和学生。实体主要有学生、教师、课表、成绩、教学 计划5个,具体的E.R模型如下列各图所示。图3.1教务系统E.R图图3-2学生选课成绩管理E-R图

图3.3学生选课E.R图

3.1.4数据库表建立

图3.3学生选课E.R图

教务管理系统数据库表数量很多,在这里仅列出具有代表性的几个重要模块 中的数据库表。

表3.1用户登录信息表

表3-2学生基本信息表

表3.3课程信息表

表3.4成绩信息表表3.5教材信息表表3-6教师信息表表3.7科研信息表表3.8评教信息表表3-9工作量统计表

表3—10教学计划信息表3.1.5数据完整性设计

数据的完整性是指存储在数据库中的数据的正确性和可靠性,它是衡量数据 库中数据质量好坏的一种标准。 满足数据完整性要求的数据应具有以下特点:

>数据类型准确无误

≯数据的值满足范围设置 >同一表格数据之间不存在冲突 >多个表格数据之间不存在冲突 数据完整性可以分为以下四类:

(1)实体完整性(Entity Integrity):实体完整性的目的是确保数据库中所有实 体的唯一性,也就是不应使用完全相同的数据记录。可以通过设定主键、唯一 键、唯一索引等多种方法来实现实体完整性,其中最常用的是使用主键。如, 本文中的学生信息表,学生的学号是唯一的值,是学生信息表的主键。 (2)区域完整性(Domain Integrity):区域完整性是要求数据表中的数据位于 某一个特定的允许范围内。可以使用默认值(Default)、核查(Check)、外键、 数据类型和规则(Rule)等多种方法来实现区域完整性。如,限制“sex”性别 字段的数据值可以是“F"或“M",那么,输入的其他数值将被SQL Server拒

绝。

(3)参考完整性(Referemial Integrity):参考完整性是用来维护相关数据表之 间数据一致性的手段,通过实现参考完整性,可以避免因一个数据表的记录改 变而造成另一个数据表内的数据编程无效的值‘221。可利用外键、触发器和存储 过程来实现。如,在教师数据表和工作量数据表中,如果要删除教师数据表中 的一条记录,而同时在工作量数据表中存在需要参考该记录的记录集,那么该 删除操作将会失败。

(4)用户定义完整性:这种数据完整性由用户根据实际应用中的需要自行定 义。可以用来实现用户定义完整性的方法有:规则、触发器、存储过程和数据 表创建时可以使用的所有约束。

通过使用这些强制的完整性定义,数据库管理系统将提供更可靠的数据,同 时避免在多个用户同时操作数据库时可能发生的数据不一致。 3.1.6数据库表的实现

经过前面的需求分析和概念结构设计以后,得到数据库的逻辑结构。接下来

要在SQL Server 2000数据库系统中实现该逻辑结构。利用SQL Server 2000的

SQL查询分析器实现。下面是创建表格的SQL语句,由于篇幅原因,只列出部 分语句。

(1)创建系统用户表格Admin CREATE TABLE[dbo].[Admin]( 【usedd】【int]NOT NULL,

【pwd][varchar](20)COLLATE Chinese—PRC—CI—AS NULL, [group]【char](5)COLLATE Chinese—PRC—CI—AS NULL )ON[PRIMARY】

(2)创建学生基本信息表格Student~Info CREATE TABLE【dbo].【Student_lnfo】( [stuid】[int]NOT NULL,

【stuname]【varchar】(1 O)COLLATE Chinese—PRC—Cl—AS NULL, [Sex】[char](4)COLLATE Chinese~PRC—CI—AS NULL,

【age】[tinyint】NULL,【studepartment】[int](4)COLLATE Chinese—PRC—CI—AS NULL, [stucid】[int](4)COLLATE Chinese_PRC CI_AS NULL, 【smgid】[int](4)COLLATE Chinese—PRC—CI—AS NULL, [birthday】[datetime]NULL,

【address][varchar](50)COLLATE Chinese—PRC—C1一AS NULL, [phone][varchar](12)COLLATE Chinese—PRC—CI—AS NULL, [Jiguan】[varchar](1 o)COLLATE Chinese._PRC_CI_AS NULL )ON[PRIMARY] (3)课程信息表格Course—Info CREATE TABLE[dbo].【Course_Info]( [cid]【int](4)NOT NULL,

[cname][varchar](30)COLLATE Chinese—PRC—CI—AS NULL, 【ctypeid】【int](4)COLLATE Chinese—PRC CI_AS NULL 【clong][int](4)COLLATE Chinese—PRC—CI—AS NULL )ON[PRIMARY] (4)成绩信息表格Score—Info CREATE TABLE【dbo].【Score_Info】( 【stuid】【int]NOT NULL,

【cid】【int】(4)COLLATE Chinese_PRC CI AS NOT NULL, 【score】【smallint】NULL [restudy】【char](2)COLLATE Chinese—PRC—CI—AS NOT NULL )ON[PRIMARY】

(5)教材信息表格Book—Info CREATE TABLE[dbo].【Book._Info】( 【bid】【varchar](1 5)COLLATE Chinese—PRC—CI—AS NOT NULL, [bname】【varchar](30)COLLATE Chinese—PRC—CI—AS NULL, 【bwriter】【varchar]O o)COLLATE Chinese—PRC—CI—AS NULL, 【bpublishl[varchar】(30)COLLATE Chinese—PRC—CI—AS NULL, 【bci】【int](4)COLLATE Chinese—PRC_CI_AS NULL, 【bcoum】【int】(4)COLLATE Chinese—PRC—CLAS NULL, )ON[PRIMARY】

(其他表格创建略) 3.1.7存储过程的设计

存储过程可以使得对数据库的管理、以及显示关于数据库及其用户信息的工

作容易得多。存储过程是SQL语句和可选控制流语句的预编译集合,以—介名

称存储并作为一个单元处理【23】。存储过程存储在数据库内,可由应用程序通过 一个调用执行,而且允许用户声明变量、有条件执行以及其他强大的编程功能。 Admin表相关存储过程。对Admin表进行的操作有,增加管理员(或用户)、 验证管理员(或用户)、删除管理员(或用户)、修改管理员(或用户)权限、 修改管理员(或用户)密码、得到所有管理员(或用户)、通过用户名查找管理 员(或用户)信息等等若干操作。由于篇幅原因,我们只列举部分的设计思路

和方法。

(1)增加管理员。在系统中系统管理员有权限添加管理员,建立存储过程在 Admin表中添加管理员,用户名为参数@usefid,用户密码为参数@pwd,用户 权限为参数@group。 SQL脚本:

CREATE PROCEDUREjw_addadmin@usefid int(4),@pwd varchar(20),

@group varchar(5)as insert into Admin values(@usefid int,@pwd, @group,0,”,”) 90 (2)验证管理员。添加管理员时,需要验证管理员是否已存在,通过选择Admin 表中是否有同名管理员用户来验证,查询条件为从Admin表中得到userid字段 等于参数@userid的数据,如果所得数据集为零说明管理员名不冲突,大于零时 说明已存在此管理员。

SQL脚本:

CREATE PROCEDUREjw_addadminvalidate@userid int(4)AS select事from Admin where userid=@userid go (3)得到管理员相关信息。当登录管理后台时,系统需得到管理员信息,以 验证管理员权限和是否有权利登录,验证管理员主要是通过用户名和密码来匹 配管理员信息,如果数据为空说明不存在此用户或密码错误,数据不为空则此

用户存在,得到管理员信息。 SQL脚本:

CREATE PROCEDURE jw_getinfo@usedd int(4),@pwd varchar(20)AS select事劬m AdmiIl where usedd=@userid and pwd:@pwd 90 (4)通过用户名查找管理员信息。在系统中,需得到管理员信息,即在Admin 表中得到userid字段等于参数@userid的数据。 SQL脚本:

CREATE PROCEDUREjw_seladminbyuserid@userid int(4)AS select幸from Admin where userid=@:userid 90 463.2类设计

本系统是以面向对象设计思想为基础的,需求分析是用UML进行建模,因 此在模型基础上就可以进行类设计。

根据概要设计中的各个模块图,可以发现,每个子系统在对于数据库的操作 时都存在一些共同的行为,如添加、更新、搜索等,根据面向对象的封装特性, 可以将这些行为封装成组件。同样,对于一些非数据库的操作,例如在教务管 理子系统中有工作量的计算,这样的操作也可以封装成类,使用设计模式使得 程序更加灵活、易于修改,并且易于复用。准确的说,就是让业务逻辑与界面 逻辑分开。

数据访问层类设计:数据访问层负责链接到数据源,构建类型化数据集,然 后该数据集从对象的方法中返回【22】。

建立一个数据访问组件visitjwdata,可以创建这个类的实例来使用。它的每 一个实例都是到数据源的一个链接。可以为每一个数据表定义一个这样的实例。 该组件包括了三个方法,getdata引用数据集;deldata从后台数据源中删除数据 集;updatedata将数据集的变化添加到后台数据源中。类图如图3.4所示。

图3.4数据访问组件visitjwdata 另外,将数据库中的表格看做是对象,字段就是该对象的属性。数据库记录 就是一个实例化对象。

在第一章的静态建模中,我们分析系统中的主要类,并作出类图,根据静态 结构建模中创建的类,VB.NET语言实现。

3.3模块设计

第一章动态行为模型中的序列图和协作图对系统设计有很重要的帮助。序列 图是模块通信流程的一种抽象表示,从序列图中很容易看出各个对象之间承上 启下的关系,因为序列图主要是以时间作为单独的维来表示的。协作图和序列 图有着密切的关联,它是序列图的另一种表现形式,是通过协作角色来限定协 作中的对象或链。虽然它们的表示方法不同,但可以在Rational Rose中通过适 当的方式相互转换。

由于静态结构模型属于系统分析,动态行为模型属于系统设计,因此在这一 章里,我们就以第一章详细的建模为基础,不在对详细设计作过多的论述。在 模块设计中我们采用流程图来表达模块的算法,这里只列出几个代表性的模块。 (1)登录模块

与数据库中的Admin表格关联,检查用户id字段和12令字段,结合SQL语 句实现。流程如图3.5所示 (2)选课模块

根据登录的学生身份读取学生信息数据库表的院系、专业和班级字段值,通 过这些信息显示选课界面中相关的课程,并在学生提交自己的选课后,判断所 选课程是否符合要求,一方面选课总数限制,另一方面选择的课程为选满。流

程如图3-6所示 .5登录流程图

(3)教材管理模块

与数据库表教材信息表关联。教师在选用教材时,首先查询数据库中是否有 合适的教材,若没有则填写教材征订表提交给教材管理人员,由教材管理人员 进行课本的采集。

书本的出库业务流程如图3.7所示。

3图3-6选课流程图

图3.7出库业务流程图

4系统的实现

本系统在开发工具上,选择了Visual Studio.NET 2005。Visual Studio.NET是 一套完整的开发工具,用于生成ASP.NET Web应用程序、XML Web services、 桌面应用程序和移动应用程序1241。Visual Basic.NET、Visual C++.NET、Visual C群.NET和Visual J撑.NET全都使用相同的集成开发环境(IDE),该环境允许

它们共享工具并有助于创建混合语言解决方案。另外,这些语言利用了.NET Framework的功能,此框架提供对简化ASENET Web应用程序和XML Web services开发的关键技术的访问。

Visual Studio.NET是用于快速生成企业级ASENET Web应用程序和高性

能桌面应用程序的工具。Visual Studio支持Microsott.NET Framework,该框架 提供公共语言运行库和统一编程类。公共语言运行库是.NET框架的基础。运行 库可以看作一个在执行时管理代码的代理,提供核心服务,而且还强制实施严 格的类型安全以及可确保安全性和可靠性的其他形式的代码准确性【25】。以运行 库为目标的代码称为托管代码,而不以运行库为目标的代码成为非托管代码。 类库是一个综合性的面向对象的可重用类型集合,用户可以用它开发包含从传 统的命令行或图形用户界面应用程序到基于最新的ASP.NET技术在内的应用 程序【25】。 在数据库的开发上,本文论述的系统将采用Microsoft SQL Server2000作为 系统的DBMS支撑,SQL Server2000是能够支持企业级关系型数据库的管理系 统,它能与Windows操作系统紧密集成,具有方便易用的图形管理界面,其用 户界面风格与Windows一样非常友好1261。SQL Server2000在存储大容量数据方 面,在数据的安全性和完整性方面,在分布式处理等都是适合于企业级应用的。 而其相对Oracle,DB/2等大型数据库来说,学习更为容易,应用成本也相对较 低。采用SQL Server2000 4-ASP.Net开发本系统是一个较为理想的组合。

4.1登录模块

在用户登录界面中,最关键的问题是用户的验证,在这里可以将用户的验证 独立成一个模块。在该系统中,将用户分为几种不同的权限,每一种权限的用 户所面对的用户操作界面是不同,系统所提供的功能也是不同的,因此在数据 库中等门添加用户权限的字段,为的就是在用户登录时,比对数据表中的权限 值来判断是何种用户,从而展现给用户不同的操作界面。

实现思想:根据用户名即usefid字段和用户密码即pwd字段是否符合数据 库中的数据来决定该用户是否为已注册用户,如果不一致则有两种可能:一是 该用户的用户名或密码输入错误,二是该用户可能是未注册用户,数据库中还 没有该用户的信息。遇到这两种情况中的一种,都要弹出提示,指示用户要么 重新输入用户名和密码,重新登录;要么就要进行信息注册。若用户的名和密 码与数据库中数据相符,则进行下一步判断,验证同一条记录的另一个字段即 group权限字段,根据权限字段的值决定显示何种操作界面。如图4一l所示。

图4—1教务管理系统登录页面

这一模块中有一个功能“注册”功能,选择“注册”后,会出现一个注册页 面,这一页面中有多个表单输入框,用户在进行输入后,表单提交到Web服务 器端时,要验证表单字段的合法性,在这里使用ASENET的验证控件.这样可 以防止用户向数据库表提交错误类型的数据。验证控件会在客户端(浏览器) 和服务器端都默认执行验证。从用户角度看,这一功能非常好,因为无论何时 把一个无效的值输入表单字段都能立即得到反馈。

每个验证控件都包含一个lsValid属性,如果验证过程中未发现错误,这个 属性将会返回True值。如果页面中所有的验证控件的lsValid都返回True,那 么Page.IsValid属性就是True。因此模块代码中通过检查Page.IsValid属性判断 是否将表单值填入数据库表。图4.2所示为注册页面中添加了验证控件的效果。

图4-2验证控件

4.2教师功能模块

教师登录系统成功后能够执行的操作,共有4个主要菜单,成绩录入、信息 维护、信息查询和选课(自然班)名单打印。 (1)基本信息管理

主要功能是输入教师的一些基本信息,供教务部门查阅和调用。其中有一些 档案中的基本信息,是直接从数据库中读取的,不能随意更改,另外一些不重 要的信息由教师选择是否添加和更新。这里也是使用了表单验证控件防止非法 的数据写入数据库当中。图4.3是教师基本信息管理的页面。 (2)信息查询

主要完成教师对自己工作上的一些信息的浏览。如本学期课表、教学计划、 选课情况、教学质量信息等。 (3)成绩录入

主要功能是对本学期教学班成绩的输入,每个学期学校教务部门对每门课程 每教学班下发专门的成绩录入密码,教师获得密码后登录成绩,然后使用密码 提交,提交后不能再修改。 (4)选课(自然班)名单打印

选择该菜单后进入如图4-4所示界面。在这一页面中,根据教师选择的学年 学期以及教师所教授的课程名,弹出符合选择条件的学生班级人员列表。也可 以在班级选择栏中,找到要查找的班级列出班级列表。

图4-3教师基本信息管理界面

图4-4教师所教班级学生名单

每个学期的学期未,教务处会开放选课功能,并规定学生在限定的时间内进 行网上选课。在指定的时间内,学生可以多次进行网上选课。 选课的条件有:

(1)选修课程数的限定:根据每学年的培养计划,设簧不同年级的限选门数。 (2)选修年级的限定:不同的年级学生在登录选课模块后,查看到的所选课 程名称是不同的,某些课程只面向固定的年级。

(3)选修人数的限定:每个选修课程可以设置最大选课人数,并可咀选择选 课人数满时的解决办法,如禁选,或者允许继续选择,当选课结束时由教务人 员筛选。

(4)选修名单已经确定,或者被管理员设置禁选的课程,在选课时间范围内 只接受己选中的学生退选要求。

设计思路:学生登录后,根据学生的身份,及判断学生过去的选修记录来显 示该学生的选课界面,首先从课程信息表中找到课程类型(ctypeid字段)为选 修课的这类课程,并且满足crime字段的值为本学期.这样的课程以表格形式 显示;其次,对显示的每--1]课程添加复选框,允许学生选中或者退选。复选 框checked属性若为True,说明被选中,否则未被选中。在接到学生提交的选 课信息时,检查学生的选择是否有效,即判断学生的选课总数是否超出该年级 的限选门数,并判断选课人数是否超出限选人数,也就是判断该课是否设为满 即禁选。如果满足以上条件,将本次选课记录写入数据库中。在本功能模块中, 还存在一种校验功能.检查学生所选课程是否时间矛盾,如果矛盾则及时通知 学生,以便重新选课. 图4-5学生选课界面

4.4教学计划管理模块

教学计划是根据每个专业制定的学生培养计划和教学课程大纲而延伸出来 的与课程安排、教师排课、成绩等信息有着密切关系的文件,是教务管理的核

心内容。

教学计划中每学期的所教授的课程明细是由教务管理人员根据学生培养计 划和教学课程大纲列出,然后送达各个院系。由学院的教研室主任根据各个教 师的实际情况分配教学任务。然后将教学任务返回教务处。教师在接到教学任 务后,根据教学课程大纲中的教学要求,详细写出自己课程的教学授课计划, 并从教务管理系统输入,这样教务处和学生都能看到了。

教学计划分成了两大部分,教务处制定的总的计划和教师制定的课程详细计 划,这些都可以通过网络向全校人员公布。

在教学计划管理页面上,有些信息是教务管理人员在后台输入的,是教师不 能修改的,这部分信息就是教务处制定的总的计划。教师指定的课程详细计划 是可以由教师修改添加的。如图4-6和4.7所示,为教务计划页面的部分截图。

图4-6由后台输入不能修改的信息

第四篇:基于ASP技术的毕业生信息管理系统的设计与实现

第五篇:基于ASP的招聘网站规划与实现 - 计算机网络技术毕业论文网站设计毕业论文

基于ASP的招聘网站规划与实现

求职是当今大学生在毕业前最关注的一个问题。由于如今大学生上网途径非常便捷,使得网络招聘成了异军突起深受大学生广泛欢迎的求职方式。据统计,约有九成以上的毕业生通过浏览招聘网站或者在网上发布自己的求职信息来寻找工作。网络求职有其突出的优点,即信息量大,资源丰富,更新速度快,招聘职位多等,很符合年轻人希望以最快捷便利的方式获得最多最有效信息的求职要求。

该文中的招聘网站就是一个模拟网上招聘和职业介绍的求职网站,具备现实中人才中介机构的功能。可以为个人用户提供需要的求职与招聘的信息,也可以为企业用户提供需要的人才信息,可以说是两者互动的一种重要渠道。本网站采用Dreamweaver网页制作工具,ASP脚本代码,Access数据库等相关工具,来开发该网站。利用以上的制作技术与工具,再加上一些当今的网站开发与创意设计理念,可以构建出一个符合当今社会要求的求职招聘类型的网站,适合于个人用户使用和企业用户使用。本文章主要阐述的是该招聘网站的构建方法,至于前台的网页制作部分暂不在该文章阐述内容之内。

在整个求职网站构建完成之后,在程序中的多表查询与数据库中多表间数据联系时的实现是该求职网站不可避免的问题,在文章的后部分将会详细提到。

关键词:招聘求职,网站构建,制作工具

I

基于ASP的招聘网站规划与实现

要......................................................................................................................... I 1 2 引言 ........................................................................................................................ 1 招聘就业网站发展现状 ........................................................................................ 2 2.1 2.2 2.3 3 网络招聘的优势.............................................................................................. 3 当前网络招聘存在的问题.............................................................................. 3 网络招聘技术和服务体系有待完善.............................................................. 4

系统开发相关技术 ................................................................................................ 5 3.1 3.2 3.3 网页设计软件Dreamweaver .......................................................................... 5 ASP简介 ......................................................................................................... 5 Access数据库简介 ......................................................................................... 6

Access的发展 .......................................................................................... 6 Access的优点 .......................................................................................... 7 Access的缺点 .......................................................................................... 8 3.3.1 3.3.2 3.3.3 4 招聘就业网站的分析与设计 ................................................................................ 9 4.1 网站风格定位.................................................................................................. 9

网站的主要功能....................................................................................... 9 设计网页Logo ......................................................................................... 9 设计网页Banner .................................................................................... 10 4.1.1 4.1.2 4.1.3 4.2 在Dreamweaver中制作表格结构页面 ....................................................... 10 网站效果图设计..................................................................................... 10 网页的布局............................................................................................. 11 4.2.1 4.2.2 4.3 创建数据库.................................................................................................... 11 设计数据表结构..................................................................................... 11 连接数据库............................................................................................. 15 会员的注册............................................................................................. 16 个人会员填写资料................................................................................. 19 企业会员填写资料................................................................................. 24

II 4.3.1 4.3.2 4.3.3 4.3.4 4.3.5

基于ASP的招聘网站规划与实现

4.3.6 4.3.7 4.3.8 4.3.9 4.3.10 4.4 企业会员发布招聘信息......................................................................... 28 个人会员查看招聘信息与发送求职..................................................... 31 会员简历的显示..................................................................................... 35 企业会员查看应聘信息......................................................................... 38 网站中不同类别会员发送信息的实现 ............................................. 39 本地测试及上传发布.................................................................................... 43 网站的本地测试..................................................................................... 43 网站的上传发布..................................................................................... 44 4.4.1 4.4.2 4.5 常见问题........................................................................................................ 44 在程序中的多表查询问题..................................................................... 44 数据库中多表间数据联系时的实现技巧............................................. 44 网站中会员面板的实现技巧................................................................. 45 4.5.1 4.5.2 4.5.3 5 结论 ...................................................................................................................... 46 参考文献...................................................................................................................... 47 致

谢...................................................................................................................... 48

III

基于ASP的招聘网站规划与实现

1 引言

近几年,由于世界金融风暴的影响,就业一直成为百姓所关注的话题,尤其是当今的大学生,毕业之后,第一个问题摆在大学生面前的就是就业[1]。根据当今的社会分析,社会当中倒不是没有职业,有很多职位等着人们去做,但是想找一个能够适合自己的工作,却是非常的困难。

以往人们找工作,通过报纸,电视广告等一些媒体的传播或者是到招聘会上去,但是由于信息来源有限,找到一份合适自己的工作还是一个难以解决的问题。

近年来,随着Internet的迅猛发展,网上相继出现各种以招聘为主体的网站,供给大众进行网络上找工作。例如无忧工作网、中华英才网、前程无忧、智联招聘、中华英才网等等。网站招聘之所以能在短时间内迅速被大众所接受,并且几乎成为了大家主要的找工作的一种媒介,就是因为它的便利性,足不出户就能找工作;而且网上的资源来源广泛,不用担心信息匮乏;在网路上找工作还会节省大量的时间[2]。所以,网络招聘在众多工作资源媒介当中占有举足轻重的地位。

本文正是符合当今的网站需求,构建一个小型的招聘网站,不但能够迎合当今的社会网络发展步伐,而且对网络设计和动态网站能力的培养,也是相当有促进作用的。

在构建招聘网站的过程当中,网站内容的前期设计是不可缺少的一项,本文中,首先会探讨到一些该网站的功能,简要的阐述一下网页的Logo设计和网页的Banner设计,因为网页的前台美观设计部分不属于该论文的探讨范围之内。在构建的主要内容,首先会涉及到数据表的结构设计[3]。之后,文章中会详细的介绍该招聘网站中的代码的编写内容,每一个细节环节都会被纳入之内。

在整个网站完成设计之后,会有相关的测试工作,以便更加的使得网站的正常运营。在所有的工作完成之后,无论是设计者本人还是参与策划的工作人员,都会对动态网站的搭建有一个非常深刻的印象。这对今后的网站搭建工作是很有帮助的。

文中会合理地运用ASP的相关语法、关键字的功能以便构建出相对完善的招聘网站。

基于ASP的招聘网站规划与实现

2 招聘就业网站发展现状

据易观国际研究发现,2007年中国网络招聘市场全年营收规模达到9.096亿元,较2006年同比增长37%。全国性的3家招聘网站:前程无忧、中华英才网、智联招聘分列网络招聘市场前三甲,市场份额分别是31.1%、25.7%、15.3%。网络招聘市场集中度CR3为72.1%,属于市场集中度较高的行业。同时,数据显示,截至2008年2季度,网络招聘的个人用户注册规模已经达到了10543万人,较今年第一季度增长16%,较去年同期增长61%,而招聘企业数同比增加31%,达到了736万家[4]。

可以看出,三大招聘网站汇集了中国网络招聘市场的绝大多数资源,人才库数量庞大且相对集中。而从整个行业在中国发展的市场前景看,随着网络资源的不断深入和企业招聘形式的日趋多元化,网络招聘将在中国未来的企业招聘及人才求职过程中占据越来越重的比例。同时,就业人数的逐年增长和人才流动的频率加快也刺激了网络人才库中简历数量的增加。中华英才网CEO张建国就认为,城市白领已经习惯了网络招聘、在线投递简历的方式。近两三年内新增毕业生数量增加,求职人数也在增加,市场增量相当可观。数据显示2007年,全国求职人数接近2000万人次,同比增长60%。

也就是说,未来网络招聘市场还将持续不断增长的发展趋势,而三大网站由于其自身的规模优势也会使得越来越多的人才资料汇集于此,可以说,三大网站将成为中国重要的人力资源库。

从三大网站的具体情况来看:前程无忧总体业务排名第一,简历库数量约有1900万;中华英才网位居第二,有效简历数突破1250份;而此前一直处于第三的智联招聘,2007年10月以后,覆盖用户数(注册并投放简历的应聘者)开始超过前程无忧,排名第一(艾瑞咨询)。另有资料显示,截至2008年7月,智联注册用户为3000万,简历库简历数量为2200万,每日增长超过4万封,活跃简历为810万份,活跃度约为25%。其用户中,本科背景的约占60%,2000??4000月收入的比例为44%,其次是4000??6000月收入的约占34%。求职者所在行业排名中,IT服务领域占9%,随后是互联网/电子商务,为8%,加工制造为7%,房地产/建筑/装潢为6%,通讯为5%,其他医药、咨询、快速消费品、教育、广

2

基于ASP的招聘网站规划与实现

告公关均占4%[5]。

但是,由于中国招聘网站尚处于发展阶段,赢利模式还不稳定,所以目前三大网站中除了前程无忧外,其他两家都纷纷出现亏损。Monster在二季度财报电话会议中称,“我们今年第二季度在中国的投资遭到了380万美元的损失,这个损失比我们的预期要高。”截至目前,Monster在中国的投资仅有中华英才网一项,共占中华英才网45%的股份。这意味着,二季度中华英才网的亏损额高达800多万美元。据了解,中华英才网去年全年亏损约960万美元,今年二季度的亏损额已经接近这个数字,这当然无法令Monster满意。除了巨亏的中华英才网,智联招聘的投资方澳大利亚网络招聘公司Seek也曾在财报中披露智联招聘巨额亏损的消息。2007年7月至12月的半年里,智联招聘税后亏损780万美元,比2006年同期亏损度增加95%。在线招聘的三强,三家中两家出现亏损,显现出这一市场的严峻态势[6]。

2.1 网络招聘的优势

网络招聘具有三大优势:

(1).信息社会网络可以提供庞大的信息,不容置疑。

(2).快捷方便,招聘者不用去招聘会劳神,求职者也可以不出家门轻松求职。 (3).经济实惠,用人单位成本小,求职者也省钱。对于求职者来说逛网上的招聘会可以省去交通费和制作简历的费用,节约很大的成本[7]。

2.2 当前网络招聘存在的问题

(1).信息虚假。虚拟的网络世界给少数虚假信息提供了可乘之机,对求职者和招聘者双方来说,也都存在对虚假信息的担忧。有些网站为了吸引人气,往往会发布一些过期的职位或某些虚假信息,还有一些企业通过发布并不存在的职位来招聘销售人员,还有些企业则虚假抬高职位薪水[8]。

(2).个人资料通过网络泄露带来不必要的麻烦。有些求职者可能会有这样的遭遇,莫名其妙地接到自己从来没投过简历的保险公司或传销公司的电话,不厌其烦地对其游说,更有甚者利用求职者的照片在一些不法网站上谋利。而且由于

基于ASP的招聘网站规划与实现

对个人登记没有“实名制”的要求,招聘者通过网络难以确定应聘者的真实身份,无从抵制虚假简历,而且目前也缺乏有效的过滤技术,无法事先剔除虚假信息和针对性不强的信息。此外,由于网络招聘的成本较低,某些求职者并不是真的想跳槽,而只是想试探自己的身价。这一类消极应聘者的不严厉投递行为也给用人单位的筛选增加了困难[9]。

(3).简历投出去就石沉大海,杳无音信。“投了好几十份简历了,都没有音信。”这种抱怨对于网上求职者来说已经习以为常,由于缺少与用人单位面对面的沟通,求职者在投递简历后很多都会陷入被动等待的状态,而且通常参加传统招聘会后求职者一周之内就能得到回音,而网上招聘会的等待期相对被延长了,经常是简历发出后数十天才接到反馈,有些甚至石沉大海[10]。

2.3 网络招聘技术和服务体系有待完善

网络招聘并不是简单地把招聘信息搬上网,“一挂”了事。除了具备必要的技术实力以外,招聘网站还必须对人力资源有深刻的理解,需要有较强的市场策划与推广能力,以吸引更多的应聘者。然而目前大多数招聘网站在深层次的服务上还很薄弱,对人才市场的分析、市场供求倾向、薪资水平、相关人事制度变化等方面的咨询服务也十分有限。网络招聘的服务体系还处于初步发展阶段,需要进一步发展改进。

信息的极大丰富也就意味着信息的极大泛滥,先进的网络技术极大地提高了信息传递的速度,对于一个职位会同时产生许多的求职者。在招聘组织收到极为丰富的简历的同时,也会出现简历数量过于庞大,人力资源部门不得不花费大量的时间进行筛选,疲于应付的现象。此外,大量无效的信息还会增加真正合格的候选人漏选的可能性。比如,有统计表明,一些通过珠海人才网进行网上招聘的规模较大的企业每周要接收500至1000份新简历。面对如此多的简历,人力资源治理者通常是匆匆浏览一遍后就将其中的80%删除了,一般浏览每份简历的时间不超过半分钟。要让公司在半分钟内通过一封E-mail对应聘者产生爱好,其难度可想而知。在网上有过求职经历的人中,75%都经历过失败,40%的人承认已经彻底失败[11]。

4

基于ASP的招聘网站规划与实现

3 系统开发相关技术

3.1 网页设计软件Dreamweaver Dreamweaver是一个功能强大的网页设计工具,有着方便实用的工具和所见即所得的排版功能,见面十分友好,使用方便。在不需要掌握HTML语言的情况下,即可利用其强大的功能开发出专业的网页。Dreamweaver也是一个方便的编程工具,可以方便地编写ASP、PHP、JSP代码,软件的自动提示填充功能和代码染色功能可以有效地帮助用户编写和调试各种代码。借助于Dreamweaver可以快速方便地开发出各种动态或静态网站[12]。

3.2 ASP简介

ASP是Active Server Page的缩写,意为“动态服务器页面”。ASP是微软公司开发的代替CGI脚本程序的一种应用,它可以与数据库和其它程序进行交互,是一种简单、方便的编程工具。ASP的网页文件的格式是.asp,现在常用于各种动态网站中。 ASP是一种服务器端脚本编写环境,可以用来创建和运行动态网页或Web应用程序。ASP网页可以包含HTML标记、普通文本、脚本命令以及COM组件等。利用ASP可以向网页中添加交互式内容(如在线表单),也可以创建使用HTML网页作为用户界面的web应用程序[13]。 与HTML相比,ASP网页具有以下特点:

(1)利用ASP可以实现突破静态网页的一些功能限制,实现动态网页技术; (2)ASP文件是包含在HTML代码所组成的文件中的,易于修改和测试; (3)服务器上的ASP解释程序会在服务器端执行ASP程序,并将结果以HTML格式传送到客户端浏览器上,因此使用各种浏览器都可以正常浏览ASP所产生的网页;

(4)提供了一些内置对象,使用这些对象可以使服务器端脚本功能更强。例如可以从web浏览器中获取用户通过HTML表单提交的信息,并在脚本中对这些信息进行处理,然后向web浏览器发送信息;

基于ASP的招聘网站规划与实现

(5)可以使用服务器端ActiveX组件来执行各种各样的任务,例如存取数据库、发现和那个Email或访问文件系统等。

(6)由于服务器是将ASP程序执行的结果以HTML格式传回客户端浏览器,因此使用者不会看到ASP所编写的原始程序代码,可防止ASP程序代码被窃取。

(7)方便连接ACCESS与SQL数据库。

(8)开发需要有丰富的经验,否则会留出漏洞,让黑客利用进行注入攻击[14]。

3.3 Access数据库简介

Microsoft Office Access(前名 Microsoft Access)是由微软发布的关联式数据库管理系统。它结合了 Microsoft Jet Database Engine 和 图形用户界面两项特点,是 Microsoft Office的成员之一。

Access能够存取 Access/Jet、Microsoft SQL Server、Oracle(甲骨文软件公司),或者任何 ODBC 兼容数据库内的资料。熟练的软件设计师和资料分析师利用它来开发应用软件,而一些不熟练的程序员和非程序员的"进阶用户"则能使用它来开发简单的应用软件。虽然它支援部份面向对象(OO)技术,但是未能成为一种完整的面向对象开发工具[15]。

其实Access 也是微软公司另一个通讯程序的名字,想与 ProComm 以及其他类似程序来竞争。可是事后微软证实这是个失败计划,并且将它中止。数年后他们把名字重新命名于数据库软件。 3.3.1 Access的发展

进入可提供的编程语言,当时在另一个内产品Microsoft Office家具,微软公司应用的Visual Basic。两个数据库进入讯息库COM组成部分被提供:这笔遗产数据存取物体(DAO),用进入和新只可提供ActiveX数据对象(忙乱)。

MicrosoftAccess容易被应用于小的工程,但是如果设计的不好对大工程是无用的。

全部数据库质问,形式和报告被储存在数据库里,并且与相关的模型的理想协调,没有与他们做一个身体上组织的阶层的可能性。

一种设计技术是把进入应用在数据和计划之间进行分发。一数据库应该只包

6

基于ASP的招聘网站规划与实现

含桌子和关系,当另一个将有全部计划时,形式,报告和质问和对第一个数据库桌子的连接。令人遗憾,当连结时,进入允许没有有关的道路,因此那些发展环境作为这种生产环境有相同的道路应该(虽然你写你们自己的能"动态连接程序"常规在里VBA那搜出能一定背面结束档案以透过这个目录树搜寻,如果它发现这条电流通路它不能)。

这种技术也允许开发者在不同的档案中分申请,因此一些架构是可能的[16]。 3.3.2 Access的优点 (1)存储方式单一

Access管理的对象有表、查询、窗体、报表、页、宏和模块,以上对象都存放在后缀为(.mdb)的数据库文件种,便于用户的操作和管理。

(2)面向对象

Access是一个面向对象的开发工具,利用面向对象的方式将数据库系统中的各种功能对象化,将数据库管理的各种功能封装在各类对象中。它将一个应用系统当作是由一系列对象组成的,对每个对象它都定义一组方法和属性,以定义该对象的行为和外国,用户还可以按需要给对象扩展方法和属性。通过对象的方法、属性完成数据库的操作和管理,极大地简化了用户的开发工作。同时,这种基于面向对象的开发方式,使得开发应用程序更为简便。

(3)界面友好、易操作

Access是一个可视化工具,是风格与Windows完全一样,用户想要生成对象并应用,只要使用鼠标进行拖放即可,非常直观方便。系统还提供了表生成器、查询生成器、报表设计器以及数据库向导、表向导、查询向导、窗体向导、报表向导等工具,使得操作简便,容易使用和掌握。

(4)集成环境、处理多种数据信息

Access基于Windows操作系统下的集成开发环境,该环境集成了各种向导和生成器工具,极大地提高了开发人员的工作效率,使得建立数据库、创建表、设计用户界面、设计数据查询、报表打印等可以方便有序地进行。

(5)Access支持ODBC(开发数据库互连,Open Data Base Connectivity)。

利用Access强大的DDE(动态数据交换)和OLE(对象的联接和嵌入)特

基于ASP的招聘网站规划与实现

性,可以在一个数据表中嵌入位图、声音、Excel表格、Word文档,还可以建立动态的数据库报表和窗体等。Access还可以将程序应用于网络,并与网络上的动态数据相联接。利用数据库访问页对象生成HTML文件,轻松构建Internet/Intranet的应用[17]。 3.3.3 Access的缺点

ACCESS是小型数据库,既然是小型就有他根本的局限性,以下几种情况下数据库基本上会吃不消:

(1)数据库过大,一般ACCESS数据库达到50M左右的时候性能会急剧下降。

(2)网站访问频繁,经常达到100人左右的在线。

(3)记录数过多,一般记录数达到10万条左右的时候性能就会急剧下降[18]。

8

基于ASP的招聘网站规划与实现

4 招聘就业网站的分析与设计

4.1 网站风格定位

在设计网站之前,需要对网站有一个整体的定位。网站的定位包括确定网站功能、规划网站效果、网站的Logo与Banner设计等工作。 4.1.1 网站的主要功能

在进行网站的设计之前,需要对网站的风格与功能进行定位。整个网站的设计需要按照这个定位来进行。

一个招聘求职网站,应该是一个专业应用型网站。所面对的对象,应该是企业的招聘者与求职的会员。所以,网站的风格应该是清新自然的颜色与大众化企业化的网站内容,使用太个性的颜色与风格是不能很好发挥控制的。

招聘求职网站的功能,应该围绕招聘与求职来进行。针对的对象分别是企业与会员。这两方面的功能都需要通过编号设计出强大的功能。

在招聘功能上,企业通过注册成为会员。登陆以后,可以发布企业招聘信息、查看会员的求职信息、设置企业资料等内容。

个人会员功能的实现,求助者通过注册,成为网站的个人会员。个人会员登录以后,可以查看企业发布的招聘信息、向需要的招聘信息发送个人简历、管理自己的简历等功能。

网站还需要公告发布、招聘会发布、网站新闻等内容。这些不同功能板块之间存在各种逻辑关系。 4.1.2 设计网页Logo 网站的Logo是一个网站的标志,在各种场合都需要使用到网站的Logo。一个求职招聘网站设计出一个有创意的Logo作为网站的品牌标识。

网站的Logo首先要突出网站的功能,让用户一看到这个Logo就可以联想到网站求职招聘的功能。其次,网站的Logo需要有鲜明的色彩与内容。在很多Logo连接中,能够吸引用户的注意并单击这个Logo连接。

基于ASP的招聘网站规划与实现

4.1.3 设计网页Banner 求职网站的Banner就是网站中的动画。这些内容需要体现网站中的内容与网站主要开展的特色活动。

网站所有的广告中,首页的广告是最重要的,需要美观大方。网站中的Banner需要体现出“眼球效应”。可以做成动画的形式,以动态的效果吸引用户的注意力。如果是静态图片需要使用鲜明的颜色与内容。

4.2 在Dreamweaver中制作表格结构页面

在制作动态网站之前,需要制作出网站的效果图,并用Fireworks切片与优化,导出为网页。然后用Dreamweaver进行网页的布局与排版。 4.2.1 网站效果图设计

在进行网站设计之前,需要制作网站的效果图。网站的效果图就是对网站的风格、内容、基本布局进行统一规划与定位。如果只在Dreamweaver中进行网页排版,没有一个整体规划,是很难排版出美观的网页的。

求职招聘的网站,颜色应该清淡自然,不易使用过于隆重的颜色。网站的内容以表现企业招聘信息与个人求职信息为主,而不是表现出网站中出色的个性色彩与美术效果。

网站的主色调,可以使用感觉清淡的白色或淡蓝色。网站中的图片,可以搭配蓝色、深红色、灰色等。网站中的广告、图片等需要考虑到颜色的搭配。清淡的网页中搭配一些较深的颜色可以表现出很好的视觉效果与对比效果。

在网站的效果图中,需要考虑到网站的Logo的布局、大小与相对应布局的颜色关系等。在效果图中很好把握网站的整体颜色和布局效果。

网站的主色调,可以使用感觉清淡的白色或淡蓝色。网站中的图片,可以搭配蓝色、深红色、灰色等。网站中的广告、图片等需要考虑到颜色的搭配。清淡的网页中搭配一些较深的颜色可以表现出很好的视觉对比效果。

在网站的效果图中,需要考虑到网站Logo的布局、大小与相应的布局颜色关系等。在效果图中很好把握网站的整体颜色与布局效果。

完成网站的效果图之后,需要使用Fireworks对效果图进行切割和优化,然

10

基于ASP的招聘网站规划与实现

后导出为网页。 4.2.2 网页的布局

网站的效果图导出为网页之后,需要使用Dreamweaver对网页进行布局与排版。在这个过程中,参照效果图中的网页布局与效果,用Dreamweaver的相关工具,在网页中排版出这些效果。

在进行排版时,需要考虑到进行网站编程时的方便性。动态网站的内容是通过程序动态形成的,进行的布局设计要有利于网站程序的编写。

除了对首页布局与排版之外,还需要对网站中的其他重要网页进行设计与布局排版。

4.3 创建数据库

招聘求职网站中的数据内容比较复杂,有企业会员、个人会员、招聘信息、求职信息、招聘会信息、网站新闻等数据内容。这些数据有很强的逻辑关系。

因此,在设计这个网站之是需要详细分析每类数据和其他数据的逻辑关系,画出这些数据的关系图。根据这些关系合理的设置不同表的字段,建立这些数据表。

4.3.1 设计数据表结构

在这个网站中,可能有的数据内容如下。

企业会员信息:记录已经注册的企业会员,包括各种企业信息。 企业招聘信息:企业会员发送的招聘信息,与企业会员有逻辑关系。 个人会员信息:个人会员注册信息,详细记录个人求职的信息和个人资料,可以根据这些信息生成个人简历。

个人会员向企业发送的简历:个人会员查看招聘信息以后向此招聘信息发送招聘简历,和个人会员、企业会员、企业招聘信息有逻辑联系。

网站公告信息:网站的各种公告和新闻信息,这些信息由管理员管理。 招聘会信息:网站管理员发布的招聘会信息。

网站管理员信息:网站管理员的登录信息,实现网站的权限管理。 有了这些数据之后,即可设计数据库的表。在设计数据表时,需要根据数据

基于ASP的招聘网站规划与实现

实际需要设置各个数据的字段和字段的数据类型。

表t_com用来保存企业用户的注册信息。表中的字段如下表4.1所示。

表4.1 数据库表t_com的字段 Table 4.1 database table fields t_com

字段名 id usename Password Comname Tel Address Email Touch Website Com_info Com_category Addtime Hits Lastlogin

数据类型 自动编号 文本 文本 文本 文本 文本 文本 文本 文本 备注 文本 文本 整型 文本

字段长度

— 50 50 50 30 80 40 30 40 — 40 50 — 50

保存数据内容 自动编号 用户名 登录口令 公司名称 联系电话 公司地址 电子邮箱 联系人 企业网站 企业简介 企业性质 注册时间 登陆次数 最后登录时间

表users用来保存个人用户的注册信息。表中的字段如表4.2所示。

12

基于ASP的招聘网站规划与实现

表4.2 数据库表users的字段 Table 4.2 database table fields users

字段名 id Usename Password turename Tel Address Email Language School Education Info Subject Wantwork Addtime Hits Lastlogin

数据类型 自动编号 文本 文本 文本 文本 文本 文本 文本 文本 文本 备注 文本 文本 文本 整型 文本

字段长度

— 50 50 50 30 80 40 40 50 40 — 40 200 50 — 50

保存数据内容 自动编号 用户名 登录口令 真实姓名 联系电话 公司地址 电子邮箱 外语情况 毕业学校 学历 个人简介 所学专业 希望从事工作 注册时间 登陆次数 最后登录时间

表alljobs用来保存企业用户发布的招聘会。表中字段如下表4.3所示。

基于ASP的招聘网站规划与实现

表4.3 数据库表alljobs中的字段 Table 4.3 database table fields alljobs

字段名 Id Com_id Title Content Subject Howmany Addtime Hits Howlong

数据类型 自动编号 整型 文本 备注 文本 整型 文本 整型 文本

字段长度

— — 100 — 100 — 50 — 50

保存数据内容 自动编号 企业ID号 标题 招聘要求 招聘学科 招聘人数 注册时间 点击次数 有效时间

表users_getjob用来保存个人会员向招聘信息发送的个人求职信息。表中的字段如表4.4所示。

表4.4 数据库表users_getjob的字段 Table 4.4 database table fields users_getjob

字段名 Id Job_id Addtime Info

数据类型 自动编号 整型 文本 备注

字段长度

— — 50 —

保存数据内容 自动编号 招聘信息ID号 注册时间 备注信息

表news用来保存网站公告。表中的字段如下表4.5所示。

14

基于ASP的招聘网站规划与实现

表4.5数据库表news的字段 Table 4.5 database table fields news 字段名 Id title Connect Addtime Hits

数据类型 自动编号 文本 备注 文本 整型

字段长度

— 100 — 50 —

保存数据内容 自动编号 标题 内容 添加时间 点击次数

表meeting_info用来保存招聘会信息。表中的字段如表4.6所示。

表4.6 数据表meeting_info的字段 Table 4.6 database table fields meeting_info

字段名 Id Thetime Title Address Connect Addtime Hits

数据类型 自动编号 文本 文本 文本 备注 文本 整型

字段长度

— 50 100 100 — 50 —

保存数据内容 自动编号 招聘会时间 招聘会标题 招聘会地址 预告信息 添加时间 点击次数

4.3.2 连接数据库

同其他的ASP网站数据连接一样,网站中需要连接Access数据库时,可以使用下面的代码。

<%

基于ASP的招聘网站规划与实现

DIM CONNSTR,CONN DIM SQL,RS DIM I CONNSTR = "DBQ=" + SERVER.MAPPATH("DATABASE/data.MDB") + ";DRIVER={MICROSOFT ACCESS DRIVER (*.MDB)}" SET CONN=SERVER.CREATEOBJECT("ADODB.CONNECTION") CONN.OPEN CONNSTR %> 在数据库连接文件中,需要把SERVER.MAPPATH("DATABASE/data.MDB")中的数据库路径改为网站的实际数据库路径,然后将这个文件保存为conn.asp。使用数据库链接网页只需要包含这个文件。 4.3.3 会员的注册

招聘求职类网站,为了加强权限的管理和增强会员的功能,需要制作会员注册功能。会员注册并登陆以后,才可以使用网站的某些功能。

在会员注册功能中,可以把个人会员与企业会员存放在同一个表中,同一个字段区分是个人会员还是企业会员。这个表中还存放会员的联系方式等基本信息。需要有一个字段来表示会员的权限级别。具体的代码如下:

border="1"

align="center"

cellspacing="4" bordercolor="#CCCCCC">

16

基于ASP的招聘网站规划与实现

会员注册

上一篇:快乐的日子作文500字下一篇:桔子真好吃300字作文