资源描述
毕业设计(论文) 第 35 页
毕业设计(论文)
设计论文题目:
博客网站的设计与开发
学生姓名:
学生学号:
专业班级:
学院名称:
指导老师:
学院院长:
年 5 月 21 日
博客网站的设计与开发论文
摘 要
不知不觉中,博客这种新的信息技术,作为多媒体和网络的代表,近年来飞速发展,已经逐渐渗透到了我们的生活、学习、工作当中。本文将博客的理念与技术引入到我们的日常学习、生活中,设计一个专门为教师和学生个人建立个性化资源展示橱窗、学习平台、交流窗口的软件系统:教育工作者可以方便地用文字、多媒体等方式,将自己日常的生活感悟、教学心得、教案设计、课堂实录、研究成果、课件等上传发表,形成属于教师个人的资源积淀;学生博客主要展示学生的个性风采。
通过对博客的发展历程及应用现状分析,本文提出了创建博客的可行性,并且在文末深刻探讨了将博客运用于教育这种理念的优势所在,以及项目在开发中存在的局限性。
经过程序的开发与测试,可以确定网站基本实现了上述的功能点。同时本人也相信,对于将博客运用到教育的这种理念,这个项目将是一个很好的尝试。
关键词:博客,教育博客,托管博客,BBS,RSS
The Paper Of Blog Design And Development
Abstract
Unconscious, blog as a new kind of information technology, took multimedia and network representative,high-speed developing in recent years, already seeped our life, the study and the work gradually.This article introduces the abundant idea and the technology of blog in our daily study, the life, designs a software system specially for the teachers and the students.Individual establishment personalization resources demonstrated at the display window and studies on the platform.When users use the website: The educators can conveniently with the way of writing, multimedia and so on, becomes aware own daily life feeling, uploading both publications and teaching attainment, lesson plan design, classroom factual record, research results, courseware, forms belongs to the teacher individual resources to accumulate; The student blog mainly demonstrates student's individuality elegant demeanor.
Through to the blog's development course and the application present situation analysis, this article proposed founds the blog's feasibility, and discussed profoundly in the end of the article the advantage of the idea:using blog in educating,as well as the project the limitation which existed in the development.
After the procedure development and the test.We can determine the website has realized the function which spot above basically.Simultaneously I also believed that, regarding the idea of using blog in education, this project will be a very good attempt.
Key word: Blog, Edublog, Trusteeship Blog, database , BBS, RSS
目录
1 绪论 1
1.1博客概述 1
1.1.1博客的概念 1
1.1.2博客的产生与发展 2
1.1.3博客的技术和特点 3
1.1.3.1博客的技术 3
1.1.3.2博客的特点 4
1.1.4区分Blog与BBS和个人网站、个人日记 4
1.1.4.1博客与个人日记的区别 4
1.1.4.2博客与个人网站的区别 5
1.1.4.3博客与BBS的区别 5
1.2博客在国内外应用现状分析 6
1.2.1博客应用的范围和类型 6
1.2.2国内博客网站现状 7
1.2.3教育博客(Edublog)及应用现状 7
1.3校园博客 8
1.3.1校园博客的概念 8
1.3.2校园网站存在的问题 8
1.3.3创建校园博客的可行性分析 8
1.4文章结构 9
2 博客网站平台的创建 10
2.1目前博客的创建方式 10
2.2Blog软件的种类 10
2.3Blog系统的构架实例 10
3 网站的设计与开发 12
3.1系统架构 12
3.2网站页面 12
3.2.1注册页面 12
3.2.2登陆页面 13
3.2.3首页 13
3.2.4特定信息显示页面 15
3.2.5博客分区页面 15
3.2.6权限设置页面 17
3.2.7个人详细信息修改和密码修改页面 17
3.3系统模块划分 18
3.4网站的流程 18
3.5数据库设计 19
3.5.1表及字段 19
3.5.2表的关联 21
4 系统测试 23
4.1注册 23
4.1.1注册用户名检测 23
4.1.2详细信息填写规范 24
4.2登陆 24
4.3信息发布和显示 25
4.3.1特定信息显示 25
4.3.2博客区内的文章发表 25
4.4信息整理 25
4.5个人信息管理 27
4.5.1普通权限 27
4.5.2管理员权限 28
5 博客网站的优势探索 30
5.1博客网站对教师的优势所在 30
5.2教师与学生交流的平台 30
5.3博客对教育评价具有重大意义 31
5.3.1关于教育评价 31
5.3.2评价信息采集 31
5.4反馈 31
5.5快速信息传递 32
6 总结 33
6.1博客网站的意义 33
6.2对博客网站的展望 33
6.2.1将博客网站用于教育教学的反思 33
6.2.2对博客的展望 33
7 致谢 35
8 参考文献 36
1. 绪论
早期博客在网络上的作用无非是作个人的个人的网络日志用,但近年来博客竟如雨后春笋般冒出来,获得了越来越多网民的欢心,并且引发了各种新的应用热潮。由于其沟通方式比电子邮件、讨论群组更简单和容易,博客的应用领域已不再局限在早先的定义:不仅简单地作为一种网络交流方式,其作为一种快捷易用的知识管理系统,也越来越受到教育工作者的关注并逐步被引入到教育教学领域中。
1.1 博客概述
1.1.1 博客的概念
博客是“blog”的中文译名(blog又译作网志、部落格),英文blog起源于“weblog”,中文词义是“航海日志”,引申为任意类型的流水型记录。1997年由JornBarger所提出。在1998年,infosift的编辑JesseJ.Garrett,将一些类似的网志网站收集起来,寄给CameronBarrett。Cameron随后将名单发布在CamWorld网站上,许多人亦陆续将网志的URL给Cameron,慢慢的,一个新的网络社区俨然成型。可以给予初期的Blog这样的定义:一种基于Web的应用系统,用于提供用户以日志方式发布网页。
博客发展之迅速,导致它越来越多样化,以至于现在很难为博客下一个完整准确的定义,就好像对着一直是个移动的靶射击一样,很难命中目标。在此,本人只能引用国内外最著名的Blog的一些定义。
(1)Blog,Afrequent,chronological publication of personal thoughts and web links.A blog is often amixture of what is happening in a person’s life and what is happening on the web,a kind of hybrid diary/guide site,although there are as many unique types of blogs as there are people.Blogs are alter natively called weblogs or weblogs.However,”Blog” seems less likely to cause confusion,as “weblog” can also mean a server’s log files.
(2)Pyra创始人Evan Williams认为博客概念主要体现在三个方面:频繁更新(Frequency),简洁明了(Brevity)和个性化(Personality)。
(3)佩姬•努南的解释:博客是每周7天,每天24时运转的言论网站,这种网站以其率真、野性、无保留、富于思想而奇怪的方式提供无拘无束的言论。
(4)Jupiter研究公司副总裁盖丁伯格则把博客的作用概括为:a、个人自由表达;b、知识过滤与积累;c、深度交流沟通的网络新方式。
本人个人感觉一个博客网站应该包含以下三个基本元素:
(1)一个Blog就是一个网页,网页主体内容由不断更新的、个人性的众多“帖子”组成。
(2)这些“帖子”按时间顺序倒序,也就是最新的放在最上面,最旧的在最下面。
(3)“帖子”内容可以是各种主题、可以有各种外观布局和写作风格,但是文章内容必须以“超链接”作为重要的表达方式。Blog可以是个人心中所想之事情的发表,也可以是一群人基于某个特定主题或共同利益领域的集体创作。
1.1.2 博客的产生与发展
博客技术和应用的发展主要是在国外完成的。博客最古老的原形是NCSA的“What's New Page”网页,主要是罗列Web上新兴的网站索引。1997年12月,JomBarger运行“RobotWisdomWeblog”,第一次使用Weblog这个名字,来描述有评论和链接,且持续更新的个人网站。1999年,PeterMerholz以缩略词“Blog”来命名博客,标志着博客正式成形。在2001年“911”时期和2003年伊拉克战争时期出现的战争博客,使博客进入主流媒体视野,越来越多的人开始了解、熟悉并加入博客行列,壮大着博客的队伍。随着博客人数的日益增多,它的目的与最初已相去甚远。最初Blog被定位于一个写作和记录的工具,随着人们认识的深入,Blog作为交流和讨论工具的作用日益显现。由于沟通方式比电子邮件、讨论群组更简单和容易,Blog已成为家庭、公司、部门和团队之间越来越盛行的沟通工具,并且逐渐被应用到教育的实践领域中。博客进入中国的时期较晚,发展速度非常迅速。中国博客小史记(2000.1-2004.5):
2000年1月,台湾地区阿坚发表文章《网录:一种新内容形式的崛起》,Weblog的概念开始进入中国。
2002年7月,Blog的中文名字“博客”由方兴东和王俊秀正式命名。
2002年8月,博客中国(BlogChina)开通,开始了博客在中国的全面启蒙和推动。
2003年3月,南开大学百合Blog系统开通,中国科技大学Blog系统完成安装调试,开始进入测试阶段,Blog在高校开始迅速发展。
2004年1月,教育部哲学社会科学研究重大课题攻关项目《博客(Blog)技术及其对组织沟通和社会交流方式的影响研究》获得批准,新兴的博客应用首次纳入国家级科研项目。
2004年5月,南京召开的中国首届网络传播年会上,博客成为最大热点之一,标志着中国学术界全面跟踪和研究博客的发展。据不完全统计,到今天全国博客数量已经达到上百万.它的发展速度惊人,各个专业领域的博客如“雨后春笋”,纷纷浮出水面,越来越成为专业领域人士关注的焦点。
1.1.3 博客的技术和特点
1.1.3.1 博客的技术
Blog采用XML来描述其内容,用XML-RPC作为不同Blog间交流信息的标准方式,其关键技术还有RSS、TrackBack等。
RSS是用于分发Web站点上的内容摘要的一种简单的XML格式。用一些大家约定的标记描述一个网志或者一个新闻源的最近更新的内容。那么,RSS技术到底是什么呢?说得通俗一点吧,这就好比你要看报纸的某些消息,平时你得先去找到相应的报纸才能看得到,而有了RSS,就好像你已经预定了含有这些消息的报纸,想看这些消息的时候,直接拿这些预定的报纸看就可以了。
TrackBack也是Blog的重要技术之一,它是一种点对点通信和网站间互相通告的框架。TrackBack的基本思想就是TrackBackPing请求,通过它可以使用站点之间相互通告相关的资源。不同的网站通过“TrackBack”技术可以将相关话题连接形成一种网状结构。TrackBack可以让使用者把评论写到自己Blog网站上,然后向刊载原始文章的Blog服务器发送该网页的URL及标题、部分正文、网站名称等信息,通过这种方式参加其他Blog的讨论。
因为项目进度的关系,以上的两项技术在项目中都没怎么用到,所以这里也就不再进一步探讨了。
1.1.3.2 博客的特点
(1)简单、快捷、低成本
只要你会打字、会点鼠标、会发送邮件,你就可以操作使用自己的博客。
(2)开放性、私有性、交互性
Blog是属于个人的私人空间,可以针对某个主题公开发表评论,并且保留在自己的网页上。也可以记录别人对你文章评论的简要信息。
(3)共享性
Blog的优势就是不断搜索提炼信息,不断学习和思考。Blog的精髓是从个人的视角精选和记录自己认为有价值的内容,为他人提供帮助,使其具有更高的共享价值。这一特点结合下一点中的实时传递,造就了博客的精髓。
(4)易管理、实时传递
Blog是易于管理的个人电子出版系统。你可以自由地记录、发布和更新,对文章分类管理。
(5)参与者充分交流沟通和协作
Blog的简单易用和即时发布为建立网络交互社区提供了便利的条件。人们拥有自己的Blog后,可以方便地利用它展开对于一些主题的探讨.并且聚集分散在各处的相同主题内容,便于互相沟通和协作,取长补短,弥补不足。
1.1.4 区分Blog与BBS和个人网站、个人日记
由于本人在开发程序刚开始的时候进入误区,所以吃了不少苦。后来上网搜索总结,大致得出了以下几点结论[3]:
1.1.4.1 博客与个人日记的区别
这两者的区别就是侧重点不同。日记(Diary):指个人把每日发生的事、经历和观察的东西写下的记录。个人性、私密性,主要为自己而写。日志(Log):航海记录,对船速、船程以及船上发生的所有对航海有意义的事件的记载。Blog是个人性和公共性的结合体,其精髓不仅仅是表达个人思想,记录个人日常经历;更重要的是可以以个人的视角,以整个互联网为视野,精选和记录自己互联网上看到的精彩内容,为他人提供帮助,使其具有更高的共享价值。
1.1.4.2 博客与个人网站的区别
(1)个人网站技术门槛较高,需要懂得HTML,ASP等网页编程语言、图形处理、网页制作、网页发布等相关技术,把很多教师和学生挡在了门外而Blog基本上是零技术,不需要掌握任何网站建设的技术,只要会打字、会上网就行了。
(2)个人网站成本高,需要租用个人空间、域名等;而Blog则不需要这方面的投资,是零成本.
(3)个人网站制作的时间周期长,从技术的掌握到网页的设计和发布需要很长的时间,而Blog只需在几分钟之内注册提交就可以了.
(4)个人网站常常追求技术的先进性和表现的艺术性,而忽略了内容本身;而Blog更注重知识的积累、共享和交流,关注内容本身,是个性化的个人知识管理系统。
1.1.4.3 博客与BBS的区别
(1)从适用的范围来看:BBS是由很多人聚在一起聊天,是一个自由交流的公众场所;而群组型Blog则是一批为了共同目标或意愿研究和探讨问题的场所。个人Blog则是个人的网络日记本,随着知识与思想的积淀,成为个人的知识管理系统。
(2)从网络文化的角度来看:BBS是一个开放自由的空间,面向的是较松散的群组,是为了解决人们缺乏自由发表言论的机会而创设的;而Blog则是私有性较强的平台,面向的是个人和具有共同目标的群组,是服务于个人和团体的。
(3)从文章的组织形式来看:BBS采用帖子固顶和根据发帖的时间顺序来组织文章,并只有版主以上级别才具有权限按主题方式对文章进行分类。而Blog则以日历、归档、按主题分类的方式来组织文章的,Blog的使用者也可以自行对文章分类,或者将属于私人的信息隐藏起来不对外公布。
(4)从交流方式上来看:BBS用户必须注册后回复,长时间后用户就很难找回发过的文章;而Blog不用注册即可回复,通过TrackBack的技术可以把自己的文章保留在个人的Blog中,同时通过原始文章可以找到网络上所有关于该文章的讨论。
(5)从内容显现上来看:BBS的开放性和自由性使用得用户在发表帖子时随意性强,无关信息较多。Blog的内容是经过使用者的思考和精心筛选组织起来的,通过网志的互联,用户是在别人精选的基础对网络资源进行再次筛选,这就保证了资源的有效性与可靠性。
(6)从信息的检索和共享上来看:BBS因发帖的随意性,造成文章检索的结果往往是无用的或重复的信息,且无法实现跨BBS的检索;而Blog使用RDF标准来组织信息,可以同时在多个Blog内检索信息。通过RSS,Blog可以实现信息的共享,这是与BBS相比最显著的技术区别。
(7)从形成的过程上来看:BBS是由众多网友针对不同的主题在不同的时间发表各自的看法,使得知识的形成没有一个连续性,显得杂乱;而Blog通常是一个人的学习过程和思维经历按时间记录的工具。其学习经历可以被我们借鉴和参考,引导我们以最快的速度掌握一门新的技术。
总之,Blog不同于个人日记也不等于BBS和个人网站。但Blog可以是个人媒体、个人网络导航和搜索引擎。Blog相对于BBS、个人网站来说有其优点,但并不表示它可以取代BBS、个人网站等其它网络工具,它并不是全能的。
1.2 博客在国内外应用现状分析
1.2.1 博客应用的范围和类型
博客1997年最初在美国出现,到2002年在中国大陆快速发展,目前已经在全球范围众多行业和领域中得到了广泛的应用。博客因其主题内容的差异、现实身份、组织形式的不同等而有各种称谓。不同的分类方法,可分出不同类型的博客。比如:个人博客和集体博客、事件博客和主题博客、新闻博客和教育博客,此外还有移动博客、专家博客等。要清楚地将他们分门别类,比较困难。按其网站的功能,笔者把博客分为以下几种。
(1)新闻博客
主要报道和链接新闻的博客网站。这类博客们对全球重大新闻有着非常敏锐的触觉,能及时搜集到最新、最重要、最让人感兴趣的新闻。
(2)专业型博客
针对特定的专业领域开设的博客网站。通常都是该领域的学者、专家建立此类博客。专业型博客把该领域的精华搜集整合,展示本专业最核心的问题、趋势和发展、重要的人物和成果、最新的产品、最好的文章、期刊和网站等。
(3)咨询导航型博客
专为上网者提供各种咨询及引导读者上网寻找所需网络资源的博客网站。本类博客是在梳理、过滤网上信息的基础上,建立起实用、方便的网上索引系统。
(4)学习、娱乐型博客
专供学习和娱乐的博客网站。其报道张贴有关的各种技术、计算机软件、教育信息、电视节目、电影、歌曲、体育赛事、游戏等的信息与文章,供上网者学习各种知识及放松身心。
1.2.2 国内博客网站现状
2004年,我国进入博客网站的兴起阶段。据2004年统计,国内提供博客托管服务的网站和博客社区共72个,其中包括50个综合性博客网站和博客社区,4个移动博客网站,4个高校博客网站,14个专业性博客网站,涉及的专业包括管理、教育、商业、法律等诸领域。据统计表明,截止2005年第三季度,国内博客累计注册用户达到330多万。
1.2.3 教育博客(Edublog)及应用现状
随着信息技术日新月异的发展和教育信息化建设的深入,教育工作者对“博客”这种网络沟通交流方式有了更多的体验和理解。有为数不少的人在网上从事着博客教育应用的探索,催生出一个新的概念一教育博客。国内教育界已经有人提出要以Blog作为主要形式来进行教学活动,Blog已经成为继课件、积件、资源库、教育主题网站等信息化教学模式之后的一种新的网络应用模式。
Blog作为一种新的现代教育技术手段,已经引起了人们广泛的注意。在国外,基于Blog而展开的学术研究课题和各种自主化学习应用不胜枚举。许多大学如哈佛大学和斯坦福大学都为师生提供免费使用的Blog系统。
不管是在协作学习还是在校内外沟通等等各方面,博客都体现了它得天独厚的优势,快速的信息更新,简单的操作,提供师生们在线学习、交流的平台。
在国内,博客技术的发展虽然没有国外成熟,但Blog进入我国只有五六年的时间,其技术的广泛应用推动了博客在国内教育领域的飞速发展。一些师生、专家学者们纷纷利用Blog作为自己研究、记录和思考的工具,在教育发展中起到了越来越重要的作用。
1.3 校园博客
1.3.1 校园博客的概念
校园博客是教育博客(Edublog)的一种。它提供了这样一个平台:教师和学生共同参与,集学生与学生、教师与学生之间思想交流、资源共享和互助互进,挑战传统师生思想交流、资源共享的教育类网站。是建立在以互动交流为前提、博客技术为基础之上的,以教师、学生两者沟通交流为原则,近于零维护、零成本的一种新的网络应用模式。该博客网站即属于一个规模比较小的校园博客。
1.3.2 校园网站存在的问题
与校园博客相比,校园网站的不足最明显的体现,一是技术的问题;二是交互性的问题。传统的校园网站是以一个校园为单位的综合性网站,建立之初需要申请空间、域名等前期准备工作,并且需要开发人员懂得HTML,ASP等网页编程语言、图形处理、网页制作、发布等相关技术,后期也需要懂技术的人员来维护更新。网站内容的上传和更新也不方便,很难做到及时更新、随时速递。校园网站的管理者一般是校内专门的管理人员,具有站内信息发布权限的人也极少。因此发布出来的信息以校园思想或者教学内容为主,缺少学生自主学习的内容及感兴趣的话题,时间久了学生对校园网站的热度必将退却。由于技术门槛高,其制作的时间周期长,使得更多的教师和同学不可能拥有自己个人的网站。对于师生交流部分,校园网站多以BBS的形式进行留言,大部分学生在校园网站中只是充当一个被动的浏览网站信息。学生的主动性难以充分调动起来,不利于学生的个性化培养。
1.3.3 创建校园博客的可行性分析
怎么样让网站充分发挥作用,使每个学生都主动参与进来,进行思想、学习的交流,形成一个良好的校园学习氛围,真正体现学生参与的自主性,培养学生的个性化及求知热情呢?怎样才能让学生更好的利用信息技术手段,为培养学生的信息化素养提供好的平台?与传统校园网站相比较,校园博客有了更全更新的内容。
校园博客申请空间简单,建立博客时间周期短,不需大量的复杂的网站开发技术,基本上是“零技术”。任何一个教师或学生只要注册申请就可以拥有自己的空间,大大提高了学生的主动参与性,有利于个性化的培养。每个同学不仅可以发表自己的见解与其他同学之间进行交流,而且可以把自己隐私的内容隐藏起来。整个校园网站是一个大的交流平台,同学和老师可以在公共的空间浏览信息资料,共同完成特定的学习任务,有利于学生团队合作精神的培养。校园博客由教师与同学共同管理和参与,其内容是丰富多彩的,交流的信息也是频繁更新的,即满足了学生的兴趣取向,又学促使学习任务的完成,起到了寓教于乐的效果。
1.4 文章结构
本文可以分为六个部分。
第一部分是对博客的概念及技术进行探讨。介绍博客的概念、技术特点以及目前的现状。
第二部分是对博客网站多种创建方式的探讨。决定项目采用SQL2000作为数据库、选用ASP.NET技术、VS2003为开发工具进行项目开发。
第三部分是论文的主体部分。详细说明了网站的设计、实现方法。
第四部分是系统的测试。
第五章是博客网站的优势探索。网站建立后的优势所在。
第六部分是总结。指出研究的意义和展望。
2. 博客网站平台的创建
2.1 目前博客的创建方式
一是托管博客,无需自己注册域名、租用空间和编制网页;二是自建独立网站的博客,有自己的域名、空间和页面的风格,需要一定的条件;三是附属博客,将自己的博客作为某一个网站的一部分或一个地址。这个博客网站的创建选择了第二种方式。
自建独立的Blog,需要申请域名、空间,自己架设Blog服务器,自己编码或者是下载网上的源代码。Blog技术发展到今天,软件种类繁多。
2.2 Blog软件的种类
Blog软件种类很多,根据开发平台的不同Blog程序基本上分三类:
第一类是基于Perl和CGI的,以MovableType为代表,它是目前用户最多的Blog软件。它功能比较强大,但设置较麻烦。Movable Type最基本的支持需求是Perl,另外还需要数据库支持,一般采用My SQL,或者Perl的Berkeley DB。
第二类是基于PI-IP的,Blog软件有wordpress,bBlog,nucleus等。Wordpress简洁功能强大,内嵌编辑工具和较好的自带模板,bBlog安装简单,适合新手使用,提供四种编辑方式,但功能不是很强大。
第三类是基于ASP的,Blog软件有Oblog,Dlog,Loveyuki's Blog,Misslog等。此类软件一般是国内开发的,安装设置简单,自带的模板美观,功能比较齐全。此外基于ASP.NET和Java的Blog程序,构架Blog系统时可以考虑自身的应用环境。这里选择ASP.NET进行程序开发,开发工具为Visual Studio .NET 2003。
2.3 Blog系统的构架实例
1、安装开发环境,.NET2003和SQL2000。
2、创建新项目NewBlog[6,438-443]。
3、编码实现以下功能:
(1)注册。选择“我要注册”,填写“注册信息”。
(2)个性化设置。注册后可以进行个性化的设置。进入Blog的修改个人信息页面,管理自己的详细信息,再通过上传个性化的图片等,增强页面的观赏性。
(3)管理权限。管理员登陆后可进行权限修改。可以删除用户,指定用户拥有“教师”或者“学生权限”。
(4)发表日志。在Blog中,学生和教师通过“发表文章”在不同的博客区发布信息。管理员可以管理各页面的文章。
(5)文件上传。项目中仅允许拥有“教师”权限的用户上传文件,这是为了方便上传文件的管理。
4、测试、发布网站。
3. 网站的设计与开发
3.1 系统架构
采用传统的三层体系结构:表现层,业务逻辑层和数据层。
表现层:系统界面和页面请求处理。用于用户接口的展示,以及用业务层的类和对象来“驱动”这些接口。该层包括aspx页面、用户控制、服务器控制以及某些与安全相关的类和对象。
业务层:处理业务逻辑。用于访问数据层,从数据层取数据、修改数据以及删除数据,并将结果返回给表现层。该层包括使用SqlClient从SQL Server或Access数据库取数据、更新数据及删除数据,并把取得的数据放到DataReader或DataSet中返回给表现层。返回的数据也许只有一个整型数字,比如一个表的行记录数目,但这也要用数据层的数据进行计算。
数据层:是数据库或者数据源。该项目采用的是SQL2000。
3.2网站模块返回数据
调用
数据库
表现层
业务层
响应请求
发送请求
图3.1-1系统架构图
3.2 网站页面
3.2.1 注册页面
(1)网站说明。介绍该博客网站的功能。选择“要注册”,显示出“下一步”按钮,点击“下一步”,进入登陆信息的填写;
(2)登陆信息。填写用户名密码,通过用户名不能重复的审核和密码确认验证,点击“上一步”返回网站说明页面;点击“下一步”,进入个人详细信息的填写;
用CustomValidata控件绑定用户名文本框,在控件的ServerValidata事件中编写代码。对比数据库userInfo表中是否存在与文本框中值相同的用户名,若无,则通过用户名不能重复的审核;否则,点击“下一步”会出现该用户名已经存在的提示,而不会跳到“填写个人详细信息”的页面。
(3)填写个人详细信息。用户填写真实姓名、出生日期、性别、院系及专业、E-mail、地址和兴趣爱好,并且支持个人照片上传的功能,这些都是利于博客的个性化展示的。
可以点击“全部重写”按钮,返回到“登陆信息”页面重新填写所有信息。可以点击“提交”按钮。在全部页面验证都通过的情况下,提示用户“某某某”注册成功,提示页面有一个返回登陆页面的链接。
3.2.2 登陆页面
图3.2-1登陆界面
输入用户名和密码,点击“登陆”,对比数据库中userInfo表中的数据,如果有匹配的用户名与密码,则通过登陆验证,并且将该用户的userID、userName、userPwd和role值保存在Session当中。同时创建Session[“flag”]=”ok”,这是用来禁止匿用户在后面的几个模块中发布信息用的。
如果通过登陆验证,进入博客网站的首页;如果验证失败,则跳转到“LoginFail”页面,可以点击上面的“点击返回”链接返回到登陆页面,重新输入。
3.2.3 首页
这个模块主要显示的一些链接。
图3.2-2管理员首页示例
顶部导航栏,可以供用户跳转到其它功能模块。有:重登陆、首页、修改密码、修改个人资料、权限配置(仅具备管理员权限的用户可以看到和使用)、休闲乐园、学习天地、留言簿、退出。
主体页面是四个列表,用DataList显示数据(选用DataList的原因是其数据显示一般来说比DataGrid要漂亮)。四个列表分别是:
好友列表,显示好友名称,点击可以给好友发送邮件;
最新文章,从数据库中的article表中获取数据,排列顺序按照发布时间进行降序排列;
经典文章,同样从article中获取数据,排列方式是按照文章被收藏的次数进行降序排列;
我的收藏,从collection表中获取articleID,然后再从article表中获取文章信息。
后面三个列表中显示的文章名都是链接,点击他们,会传送一个articleID值到PageView页面。但匿名用户只能看到列表的最新文章和经典文章列表。
3.2.4 特定信息显示页面
图3.2-3特定信息显示页
也就是上文中提到的PageView页面,它接收从首页中传过来的articleID,然后查询数据库中的article、typeInfo表,最后仅显示出这条特定的articleID的文章信息。
3.2.5 博客分区页面
该博客分为了休闲乐园、学习天地和留言簿三个区。之所以划分这三个区,并不是因为它们的功能有很大区别,主要是为了文章的归类,让博客里面的文章看起来更有条理。
文章显示(按照发布时间降序排列)和文章的发布是三个区都具备的功能。稍有差异的是学习天地里面拥有“教师”权限的用户可以上传文件。这样做的目标是方便共享资源的管理,如果拥有上传文件权限的人太多,那么上传文件的杂乱是必然的结果。
具体实现方法是;使用DataList控件,编辑其项模板,往项模板中拖放显示用的LinkBtton、Label等控件。数据绑定则在HTML代码中编写绑定,大致形式为<%# DataBinder.Eval(Container.DataItem,”字段名”)%>,供绑定的数据集则来源于后台代码中的数据库的多表查询。而DataList中的Button事件响应则不直接在后台代码中编写,解决办法是指定其中Button控件属性中的CommandName,再在DataList的ItemCommand事件中如下编写:
If(e.CommandName==”所起的名字”)
{
事件处理代码
}
图3.2-4信息显示示例
此外,可以看到信息显示的左边有对作者的两项操作:
1、 发送邮件。
这是一个HyperLink,在HTML代码中对应发送邮件的按钮的位置编码:
NavigateUrl='<%#"mailto:"+
DataBinder.Eval(Container.DataItem,"email")%>';
2、 加为好友。
利用Session中保存的userName和userID,一方面对比你所操作的那条记录中的作者名,看是否一致,若一致,则提示“不能加自己为好友”;若不一致,则对比friendInfo表中的数据,看否已经有一样的记录存在,若有,则提示“不能重复加为好友”;若无,则往表中插入据。
信息显示的右边则有对文章的几项操作:
1、删除。判断权限,如果userName和文章作者相同或者用户权限是“管理员”则删除article表中的相应文章。
2、加入收藏。LinkButton,对比collection表中的用户自己收藏文章的articleID,如果操作的文章ID已经存在,则提示“不可以重复收藏一篇文章”;若不存在,则往collection表中插入值,并且把article表中collTimes加1。
3、查看附件。HyperLink,点击,若无文件,则会显示一张无上传文件的图片提示。若有,可用保存的方式下载下来。
3.2.6 权限设置页面
该页仅系统管理员可以进入。其功能分为两块,一是用户的删除;二是权限的修改。
所有用户的信息用DataGrid显示,因为显示的都是userInfo表的数据,而表中字段太多,没必要完全显示。所以在DataGrid的属性生成器中,取消自动创建列,有选择性的添加几个要显示的绑定列和一个删除按钮列。再进行数据绑定(在SQL查询的时候要排除role=’管理员’的行),在DataGrid的DeleteCommand事件中进行删除相应行的代码编写,为了美观和方便,也可在DataGrid的ItemDataBond中事件加入代码:
if(e.Item.ItemType==ListItemType.Item||e.Item.ItemType==ListItemType.AlternatingItem)
{
e.Item.Attributes.Add("onmouseover","c=this.style.
展开阅读全文