个人主页空间管理系统的设计与实现.docx
- 文档编号:27333203
- 上传时间:2023-06-29
- 格式:DOCX
- 页数:32
- 大小:858.51KB
个人主页空间管理系统的设计与实现.docx
《个人主页空间管理系统的设计与实现.docx》由会员分享,可在线阅读,更多相关《个人主页空间管理系统的设计与实现.docx(32页珍藏版)》请在冰豆网上搜索。
个人主页空间管理系统的设计与实现
编号:
0413104
毕业(学位)论文
(2008届本科)
题目:
个人主页空间管理系统的设计与实现
系(部)院:
计算机系
专业:
计算机科学与技术
作者姓名:
指导教师:
职称:
讲师
完成日期:
个人主页空间管理系统的设计与实现
Designandimplementationofpersonalhomepagespacemanagementsystem
ChengTianjing
摘要
校园网已为学生提供了诸多服务,但随着校园网对教学的深入影响,学生越来越需要校园网还能给他们提供免费存储空间,存储一些个人资料,对于部分爱好网页设计制作的同学,还希望能够提供主页空间。
基于以上背景,开发一个“个人主页空间管理系统”,能有效解决上述需求。
本文给出了一个“个人主页空间管理系统”的详细设计与实现过程,该系统基于B/S构架,并把WEB服务与FTP服务、Server-U与SQL数据库相结合,由SQLServer服务器管理Server-U用户帐号。
系统实现了空间申请时,自动在服务器上建立以学生学号命名的文件夹,并自动开通FTP帐号与主页空间功能;实现了自动检测空间主目录下有无上传文件,并反馈相应信息功能;实现了对展示网站进行评价,根据点击次数,好评、差评和管理员评价计算综合得分,并按综合得分、申请时间等进行排序等功能。
系统后台管理模块实现了管理员的添加、修改、删除功能,限制用户注册功能及其批量删除过期用户等功能。
关键词:
个人空间;ASP;数据库;SQL;Sever-U;FTP服务器
Abstract
Theschoolnethasprovidedmanyservicesforthestudent,butalongwiththeschoolnettotheteachingthoroughinfluence,thestudentneedstheschoolnetalsotobeabletoprovidemoreandmorethefreestoragespacetothem,savessomeindividualmaterial,regardingpartialhobbyhomepagedesignmanufactureschoolmate,butalsohopedthatcanprovidethehomepagespace.Basedontheabovebackground,developsone“Homepagespacemanagement system”,it cantheeffectivesettleabovedemand.
Thisarticlehasgivenonedetaileddesignandimplementationprocessof“Homepagespacemanagement system”.ThissystembasedontheB/Sframe,andtheWEBservice、FTP、Server-UandtheSQLdatabaseunifies,theServer-UuseraccountmanagedbySQLtheServer.Whenthesystemhasexecutedthespaceapplication,establishesautomaticallyontheserverbythestudentnumbernamingfolder,andcreatetheFTPaccountandthehomepagespacefunctionautomatically;Whetherthereisrealizedtheautomaticdetectionspaceargumenttotakedowntouploadthedocument,andfedbackthecorrespondinginformationfunction;Realizedtohaddemonstrate-tedthatthewebsitecarriedontheappraisal,accordingtotheclicknumberoftimes,thehighpraise,thedifferencecommentedwiththemanagerappraisesthecomputationsynthesisscore,andaccordingtothesynthesisscore,theapplicationtimeandsooncarriedonfunctionsandsoonsorting.Thesystembackstageadministrationmodulehasrealizedmanager'sincrease,therevision,thedeletionfunction,thelimituserregistrationfunctionandthebatchdeletesfunctionsandsoonexpireduser.
Keywords:
personalspace、ASP、Database、SQL、Sever-U、FTPserver
第一章引言
1.1选题的意义
Internet的繁荣普及,极大地改变着人们的学习、工作、生活、交往、娱乐等行为方式,甚至思维和语言习惯。
Internet上提供诸多的服务,如信息浏览服务,电子邮件服务,视频点播服务,即时聊天服务,网络在线游戏,论坛,博客等。
这些服务极大地丰富着Internet的内容,使Internet成了一个的信息平台,娱乐平台、商业平台和学习平台。
校园网是Internet延伸到学校的一部分,在校园网上提供一个“个人主页空间管理系统”,可以丰富校园文化生活,为全校学生提供了一个网络免费存储空间,为网页设计爱好者提供一个实践机会和展示平台,亦对激发学生计算机学习兴趣,提高学生计算机应用技能有着积极的意义。
1.2选题的应用现状
Internet上已经有许多提供FTP个人主页空间的服务的网站,如爱迪网()所提供的个人主页空间,用户可以注册申请,但是他使用了web模式的FTP,一般只能上传单个文件,用户只能使用系统给定的固定模版而不能随意改动,而且只能发表自己的日志,以及上传自己的一些图片,不能按照用户自己的需求进行制作和修改。
又如,兰州大学的FTP个人主页空间()虽然可以使用专用软件上传自己的主页,而且使用了校园卡进行注册,从一定程度上防止外校人员进行注册,但是没有实现实名制注册。
再如,如中国8u网(),中国站长网(),等一些专业提供FTP空间服务的网站,它们所提供的免费个人主页空间一般比较小,不能满足个人网站的建设,收费的空间一般收费比较高,而且对一些服务还有所限制,由于使用的用户比较多,所以上传速度也比较慢。
通过对以上提供个人空间服务系统的了解,分析,这些系统具有以下缺点:
1非实名制申请:
用户进入系统,填写自己的信息即可开通FTP帐号与主页空间,但是不能对使用的用户加以限制,以及实行实名制注册。
2速度较慢:
一般这些免费空间,由于用户多,访问速度都比较慢;或者为了防止用户上传反动言论或一些恶意代码,并对系统作了一些防范措施。
3带有广告:
此类空间,虽为免费,但会在申请者的网页上加载广告
另外,以上这些商业系统的代码都不是公开的,也不适合学校的实际使用情况。
1.3选题主要工作内容
本选题要完成的工作是开发一个适合高校使用的主页空间管理系统,具体内容包括:
1新闻栏目动态管理
本系统导航栏采用动态管理的方法。
首页中的导航栏是从数据库中动态读取的。
超级管理员登录后台后可以对栏目进行添加,修改,删除等。
2空间申请
要求实名制申请,申请后即开通50M存储空间的FTP帐号,该空间同时也是主页空间(把网页上传到该空间,即可通过浏览器浏览)
3个人主页展示
学生上传的网页将出现在网站首页列表中,浏览者可以给与评价,并可以根据评价,点击次数和申请时间排序。
4空间管理
学生可以设置或修改自己的空间名称,登录密码,并可选择是否在首页展示。
5管理员后台管理功能
包括公告发布、用户管理、权限管理等。
第二章系统开发的相关技术
2.1ASP技术
2.1.1ASP简介
ASP(ActiveServerPages)是微软的服务器端开发技术,ASP内含于IIS当中。
通过ASP我们可以结合HTML网页、ASP脚本代码和ActiveX组件建立动态、交互且高效的WEB服务器应用程序。
ASP支持VbScript和javascript脚本语言,默认为VbScript。
ASP程序都在服务器端执行,当程序执行完毕后,服务器将执行的结果返回给客户浏览器,运行ASP页面相对于普通的HTML页面要慢一点,因为普通的HTML页面只需要浏览器就能够解析,而ASP则必须是服务器将整页的代码都执行一遍之后再发送数据。
2.1.2ASP内置对象
1Request对象
通过Request对象,我们可以收集到客户端提交的数据,客户端的Cookies,服务器环境变量等。
Request为我们的ASP程序提供了需加工的“原材料”,没有Request对象的话,那么ASP程序就失去了与客户端联系的交互能力。
2Response对象
Response对象可以把ASP程序加工后的“产品”,发送给客户,让他们可以看见结果。
同时,也可以通过Response对象设置客户端浏览器的状态,比如设置Cookies,Cookies是一种跟踪客户端状态的技术,有的网站利用Cookies来记录你是第几次访问他们的网站,而Cookies就是那些保存在Windows系统目录Cookies里的那些文件,那些文件可以供网站重新读取和设置。
3Server对象
Server对象为ASP程序的扩展提供灵活方便的途径,比如说,如果您需要在ASP程序中读写服务器上的某个文件,那么就可以借用“文件存取组件”来读写文件。
而Server对象就充当了建立这个组件的实例的角色。
需要使用某个组件,必需先建立它的一个Server对象实例,在后面将要介绍的ADO组件,您就能清楚地理解服务器对象的作用了。
4Session对象
ASP程序实际上是一个Web的应用程序,传统的HTML页,不能跟踪客户端的情况,如用户现在处于哪一个页面上,何时离开了这个网站等。
而Session对象的引入,不但能使上述的问题得以解决,并且能为用户个人保存网站期间(会话)的数据信息,它只对用户个人起作用,而对ASP程序中的其他用户是无作用的,其实Session也是利用Cooikes技术来临时保存用户数据。
当你把浏览器的Cooikes功能关闭,那么Session对象就失效了。
5Application对象
既然Session对象的数据是用户私有的,那么ASP程序中必须要有一种能让ASP程序中所有用户共同享有的数据信息,这就是Application对象,可以说。
Application对象内保存的信息,是可以让同一ASP程序中的所有用户所共享的,比如聊天室里说一句话,聊天室里的所有人都能看见,这里就是应用了Application对象把说话的信息保存起来,再显示出来。
而悄悄话是一种Session对象信息。
只有特定的用户能看见。
6ObjectContext对象
这是扩展ASP能力的一个对象,当你需要使用ASP内直接发送EMAIL,或是其它信息时,就少不了它的帮忙。
2.1.3ADO组件介绍
此系统应用程序的开发过程中的关键技术就是动态网站数据库的设计与编程,包括数据源的配置与连接、数据源的操作、数据的获取、SQL查询语言的使用。
用ASP访问WEB数据库时,ASP用DataBaseAccess组件与数据库进行连接的,DataBaseAccess组件通过ADO(ActiveXDataObjects)访问存储在数据库或其它表格化数据结构中的信息。
这是对目前微软所支持的数据库进行操作的最有效和最简单直接的方法。
Microsoft对应用程序访问各种各样的数据源所使用的方法是OLEDB,OLEDB介于ODBC(开放式数据库连接)层和应用程序之间。
在用户的ASP页面中,ADO是介于OLEDB之上的“应用程序”,如图2-1所示,显示了OLEDB、ADO与应用程序和数据存储的相互关系。
OLEDB是一套组件对象模型(COM)接口,但它是相当复杂的。
这样,用户需要一个连接应用程序与OLEDB的桥梁,这就是ADO(ActiveXDataObjects)。
而且它支持ODBC(开放式数据库连接)标准的关系型数据库。
其主要优点是易于使用、高速度、低内存支出和占用磁盘空间较小。
图2-1OLEDB、ADO与应用程序和数据存储的关系
图2-1的顶端是应用程序,下面是提供对数据的访问的ADO和OLEDB。
ADO和OLEDB两者兼有是因为OLEDB是一项基本技术。
然而,OLEDB并不适用于所有语言,所以ADO位于OLEDB的上层,为那些不能直接访问OLEDB的语言(如VisualBasic和脚本语言)提供编程接口。
ADO提供了比OLEDB更容易的编程接口,因此即使那些可以直接使用OLEDB的编程语言,如C++或Java,也可以使用ADO以简化对数据的访问。
程序开发者与ADO或OLEDB对话,OLEDB再与提供者对话。
1ADO提供的操作方式
连接到数据源:
要访问数据,必须先建立数据库连接,这是交换数据所必须的环境。
使用Connection对象实现这一操作。
操作数据源:
连接到数据库后,使用Command对象查询数据库并返回Recordset对象中的记录。
得到数据:
通过Command对象对数据源操作,返回的记录全集用Recordset对象表示。
Recordset对象所指的当前记录均为集合内的单个记录。
使用ADO时,通过Recordset对象可对几乎所有的数据进行操作。
所有的Recordset对象均使用记录(行)和字段(列)进行构造。
使用数据:
Recordset对象含有Field对象组成的Fields集合。
每个Fields对象代表了Recordse对象中的一列。
使用Field对象的Value属性可以设置或返回当前记录的数据。
检测错误:
ADO对象的操作也会产生一个或多个错误。
每个错误出现时,一个或多个Error对象将被放到Connection对象的Errors集合中。
当另一个ADO操作产生错误时,Errors集合将被清空,并在其中放入新的Error对象集。
可以及时的访问这个错误集合,以便需要的时候进行改正。
2ADO对象共享机制
在ADO中还有一个重要的机制,就是ADO对象共享机制。
对于不同的Command对象可以同时共享同一个Connection对象,甚至不同的Web页面对数据库的链接都可以共享一个Connection对象,也就是说只需要一个Connection对象对数据库做出链接的动作,就可以重复不断的利用该对象来向数据库服务器做出不同的数据库查询动作,当然这些查询动作是关联不同的Command对象。
这样不同的Web页面对于每次数据库的链接不需要分别建立一个Connection对象,数据库服务器端的负担就降低了,对于整个应用程序的响应速度和效率都大大提高了。
同样,ADO允许Recordset对象共享同一个Connection或Command对象。
这意味着只需要学会一套访问数据源的方法,无论数据如何存储,在某些情况下确实可以完全不改变任何代码,而只更换提供者。
这就是ADO和OLEDB真正优越的地方,为数据存储提供了一套常用的编程接口。
2.2SQLServer数据库管理系统
SQLServer2000关系数据库引擎是一个流行的、具有高度可伸缩性和高度可靠性的数据存储引擎。
该数据库引擎将数据存储在表中。
每个表上都列出组织感兴趣的一些对象,例如交通工具、雇员或顾客。
每个表上的列,表示由表建模的对象的属性(如重量、名称或价钱),而表上的行则代表由表建模的这种对象的事例(例如车牌号为ABC-123的轿车或雇员ID为123456的雇员)。
应用程序可以将结构化查询语言(SQL)的语句提交给数据库引擎,后者将表格格式的结果集返回给应用程序。
SQLServer支持的特定SQL语言称为Transact-SQL。
应用程序还可以提交SQL语句或XPath查询,并请求数据库引擎以XML文档形式返回结果。
关系数据库引擎具有高度的可伸缩性。
SQLServer2000企业版可以支持多组数据库服务器相互协作,构成可供上千用户同时访问的TB大小的数据库。
该引擎能够处理世界上任何Web站点的流量。
该数据库引擎还能自我调节,自动在连接到数据库的用户增多时获取资源,并在用户注销后释放资源。
这表明较小的SQLServer版本可用于无需专职数据库管理员的个人或小型工作组。
SQLServerforWindowsCE甚至将SQLServer编程模型扩展到与网络断开的移动用户所使用的WindowsCE设备上。
关系数据库引擎具有高可靠性,能够运行很长时间而不会发生故障。
在数据库引擎的早期版本中要求停止和启动的管理操作现在可以在引擎运行当中执行,从而增加了可用性。
数据库引擎与Windows2000WindowsNT®故障转移群集的集成,使你得以定义虚拟服务器,即使节点中的一台物理服务器出现故障,这些虚拟服务器仍然保持运行。
在适当的地方,日志传送可以用于维护热备用服务器。
在故障发生的数分钟内,热备用服务器可以代替生产服务器运行。
关系数据库引擎还具有高度的安全性。
登录身份验证可以与Windows身份验证集成在一起,这样,密码将不会存储在SQLServer中,也不会通过网络发送而被网络嗅探器读取。
网站可以设置C2级审核,对所有访问数据库的用户进行审核,还可以使用安全套接字层(SSL)加密的办法,对所有在应用程序和数据库间传送的数据进行加密。
数据库引擎的分布式查询功能,使你得以访问所有可通过OLEDB访问的数据源中的数据。
在Transact-SQL语句中,可以像引用实际驻留在SQLServer数据库中的表一样引用远程OLEDB数据源表。
此外,全文检索功能,使你得以对SQLServer数据库或Windows文件中存储的文本数据进行复杂的模式匹配。
关系数据库引擎能够存储由顶层联机事务处理(OLTP)系统生成的所有事务的详细记录。
该数据库引擎还可以支持最大的联机分析(OLAP)数据仓库中的事实数据表和维度表的严格处理要求。
2.3FTP服务器与Sever-U
FTP的全称是FileTransferProtocol(文件传输协议)。
顾名思义,就是专门用来传输文件的协议。
而FTP服务器,则是在互联网上提供存储空间的计算机,它们依照FTP协议提供服务。
当它们运行时,用户就可以连接到服务器上下载文件,也可以将自己的文件上传到FTP服务器中。
因此,FTP的存在,大大方便了网友之间远程交换文件资料的需要。
现在许多朋友都已经用上了宽带网,而且硬盘也有足够的空间,完全可以通过软件手段把自己的电脑变为一台FTP服务器,和网络中的朋友们一起分享大家收藏的好东西!
架设FTP服务器,有许多软件,在这里使用的是Serv-U这个软件。
Serv-U支持所有版本的Windows操作系统,可以设定多个FTP服务器,可以限定登录用户的权限、登录目录及服务器空间大小,功能非常完善。
2.4系统运行环境
为了保证系统运行的效率和可靠性,服务器端应该具有较高的软硬件配置,客户端的要求不需要很高。
此应用程序可广泛运行于Internet,也适用于内部的局域网。
运行要求如下:
硬件环境:
服务器,PIII900CPU、256M内存、40G硬盘,分别运行以下服务:
WWW服务
SQLServer数据库服务
FTP服务
系统软件:
MicrosoftWindow2000/2003
MicrosoftIIS5.0
Sever-U
SQLServer2000/2005
第三章系统设计
3.1系统功能模块设计
根据系统的实际需要,可将本系统划分为前台用户功能模块,后台管理员功能模块。
3.1.1前台用户模块功能
前台用户模块功能如图3-1所示,下面,对各个功能模块的子模块分别如下:
图3-1前台用户功能模块划分
⏹公告预览:
普通用户可以浏览管理员发布的公告。
⏹空间申请:
进入申请空间页面,填写空间信息和个人有关资料,点击申请FTP免费空间按钮,将会自动开通FTP空间。
空间申请的流程如图3-2所示。
⏹空间管理:
用户通过登录,将会就进入空间管理页面,并可以对FTP密码、空间名称、空间说明以及是否在本站首页展示进行修改。
⏹使用帮助:
此模块主要向用户提供一些帮助信息,如:
如何申请空间、如何上传网页、如何修改网站名称和说明、如何浏览自己的网页等。
⏹点击排行榜:
首页的左下方,可以显示点击次数最多的空间名称。
⏹空间评价:
在首页展示的网站,浏览者可以点击鲜花或鸡蛋分别对网站进行好评与差评,每个浏览者对每个网站的评价在两小时之内只能评价一次。
并能根据点击次数、好评、差评以及管理员评分计算综合得分。
⏹综评排行榜:
首页可以对空间信息按综合得分、申请时间等进行排序,而且可以根据姓名、学号或班级搜索。
⏹在线服务:
用户有什么疑问或意见可以通过在线服务与管理员交流。
图3-2空间申请流程
3.1.2后台管理员模块功能
后台管理员模块功能如图3-3所示,本系统分为普通管理员和超级管理员,它们的操作权限如图4所示
⏹公告发布:
管理员登录后台后可以发布公告,公告将会在首页显示。
⏹用户管理:
申请空间的用户必须在本系统中存在学号,如果没有学号,管理员可以添加。
如果用户申请空间的过程中出错,也可以将该用户的申请状态置位初始状态。
另外还可以禁用账户,删除单个账户与批量删除账户。
⏹空间管理:
该模块主要包括空间申请信息管理和空间评分管理。
空间申请信息管理管理员可以对用户申请的空间信息进行修改,包括用户的密码;空间评分管理管理员可以对用户空间进行评价打分,综合评分高的就会排在最前面。
⏹在线服务管理:
该模块主要对用户的留言进行回复、删除、修改。
⏹管理员管理:
本系统的管理员权限分为普通管理员和超级管理管理员,不同权限的管理员具有不同的管理权限。
图3-3后台管理员功能模块划分
3.2数据库设计
动态网站应用程序开发过程中,很关键的技术就是动态网站数据库的设计与编程,包括数据库的设计、数据源的配置与连接,数据源的操作,数据的获取,SQL查询语言的使用等。
本系统考虑到使用用户多,采用的数据库是SQLServer数据库,它使用方便,数据储量也大,数据存取速度,比较适合中小型网站的设计。
这里给出该系统的必需数
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 个人主页 空间 管理 系统 设计 实现