ASP.NET个人博客系统毕业设计论文.doc

上传人:小小飞 文档编号:26401 上传时间:2018-10-29 格式:DOC 页数:41 大小:1.92MB
返回 下载 相关 举报
ASP.NET个人博客系统毕业设计论文.doc_第1页
第1页 / 共41页
ASP.NET个人博客系统毕业设计论文.doc_第2页
第2页 / 共41页
ASP.NET个人博客系统毕业设计论文.doc_第3页
第3页 / 共41页
ASP.NET个人博客系统毕业设计论文.doc_第4页
第4页 / 共41页
ASP.NET个人博客系统毕业设计论文.doc_第5页
第5页 / 共41页
点击查看更多>>
资源描述

《ASP.NET个人博客系统毕业设计论文.doc》由会员分享,可在线阅读,更多相关《ASP.NET个人博客系统毕业设计论文.doc(41页珍藏版)》请在三一文库上搜索。

1、重庆电子工程职业学院 09 级毕业报告 目 录 前 言6 1 绪论8 1.1 .NET技术简介8 1.2 BLOG相关介绍.10 1.3 系统开发背景 .14 1.4 系统开发意义 .15 1.5 系统开发目标 .15 1.6 开发平台、运行环境、测试实施 .16 2 需求分析.18 2.1 系统构成 .18 2.1.1 系统组成及功能 .18 2.1.2 系统实现方案 .24 2.2 E-R关系24 2.3 数据存储 .28 2.4 逻辑分析 .28 2.4.1 数据流图 .28 2.4.2 数据字典 .30 2.4.3 系统边界 .31 2.5 系统实现的关键技术 .31 3 概要设计.3

2、2 3.1 设计原理 .32 3.2 接口设计 .32 3.3 数据库设计 .33 3.3.1 设计思路与步骤 .33 3.3.2 结构设计 .33 3.4 界面设计 .36 4 详细设计.37 4.1 系统流程图 .37 5 运行结果及调试分析.42 5.1 主要运行效果 .42 5.2 调试分析 .45 5.3 修改日志与事件记录 .46 6 设计总结.47 谢 辞.48 参考文献.49 重庆电子工程职业学院 09 级毕业报告 前 言 在本次设计中,采用.NET 技术进行 WEB 开发(C#开发 ASP。NET 程序) ,我最 大的感触也是在这个方面,设计思路、实现方法、解决步骤等等,这与

3、以往单独 的设计 Windows 应用程序、Web 程序一样。唯一不同的是采用 C#开发 ASP.NET 程序 的确是一个跨越,是一种新鲜的体验,而不是之前单一的开发 windows 程序(C+) , 单一的开发 Web 程序(ASP)那样,当然也由于这个跨越,需要自己不但要有后台 Win Form 编码的知识,也要有 Web Form 程序开发的基础所以在很大程度上,我 觉得本次的设计还算是比较顺手,虽然有不少新技术、新难题、新思路,但在点滴设 计思考中,都逐步解决了。 BLOG的新兴不是很久,但是比较流行、实用,所以开发此 BLOG系统让我对本次设 计很有兴趣,在绝大部分的时间里,我没有觉

4、得枯燥,更没有做不下去的感觉,反倒 是兴趣倍增,难题、不解我都将其看成为学习的目标、研究的对象。从 COOKIE加密、 正则的应用、URLRewrite 的实现、UBB 的思考到文件管理的编制、访问分析的思考、 站点日志的另类实现等等,在这些过程中,设计的思路是逐渐明了,直至每一个问题 的解决。事实上,在解决这些问题时,也没有那么容易,但是我觉得能学会解决这些 问题便是学习的第一步,也是个人进步所必需经历的。 本次设计,不能说是时间仓促,但即便如此,系统不足之处也是在所难免的,在每 个阶段,我都会发现这样或那样的不足,错误、需要优化、共用性、和开发环境的兼 容问题等等。这在设计的过程中,都及时

5、的记录并一一解决了。当然,我也曾将系统 放到网上进行测试,在这里非常感谢曾帮我测试的朋友们,非常感谢他们提出的建议 和提交的 BUG。如果你在应用中发现系统 BUG,或是你有更好的建议,非常欢迎能和我 联系,在此谢过! 重庆电子工程职业学院 09 级毕业报告 1 绪论 .NET 技术简介 (1)什么是 Microsoft .Net Microsoft .net 是 Microsoft 的 xml web 服务平台。.net 包含了建立和运行基于 xml 的软件所需要的全部部件。 Microsoft .net 解决了下面这些当今软件开发中的一些核心问题: 互操作性(interoperabilit

6、y) 、集成性(integration)和应用程序的可扩展性 (extensibility)太难实现而且代价很高。Microsoft .net 依靠 xml(一个由 world wide web consortium(w3c)管理的开放标准)消除了数据共享和软件集成的障碍。 无数具有相当竞争力的私有软件技术使得软件的集成变得非常复杂。而 Microsoft .net 建立在一个开放的标准上,它包含了所有编程语言。 当终端用户使用软件时,他们总觉得不够简便。有时甚至感到很沮丧,因为他 们无法在程序之间方便地共享数据或是无法对能访问的数据进行操作。xml 使数据交 换变得容易了,并且.net 软件

7、可以使得用户只要得到数据就能对它们进行操作。 终端用户们在使用 web 的时候,无法对自己的个人信息和数据进行控制,这导 致了个人隐私和安全泄漏问题。而 Microsoft .net 提供了一套服务,使用户可以管理他 们的个人信息,并且控制对这些信息的访问。 .com 公司和 web 站点开发者们很难为用户们提供足够的有价值的数据,至少 有一部分原因是由于他们的应用程序和服务无法很好地和其他程序和服务合作,只是 一个不和外界连接的信息孤岛。而 Microsoft .net 的设计宗旨就是为了使来自于多个站 点和公司的数据或服务能够整合起来。 如同 ms-dos 和 windows 一样,.ne

8、t 将大大改变我们的计算领域。 ms-dos 使得个人 电脑在商业和家庭中广为接受;windows 增强了用户的图形界面,使其成为首选的与 软件交互方式,最终使得图形界面成为个人电脑的主流。而.net 则要把 xml web 服务变 成日后的主流计算模式。 xml web 服务是建立在 xml 数据交换基础上的软件模型,它帮助应用程序、服务 和设备一起工作。用 xml 进行共享的数据,彼此之间独立,但同时又能够松耦合地连 接到一个执行某特定任务的合作组。 (2).NET 战略 Microsoft .net 程序员们设计编写的是 xml web 服务,而不是服务器或客户端的独 立应用程序。他们把

9、这些服务组合成松耦合,相互协作的软件群,xml web 服务之间使 用 xml messaging 进行通讯。为了做到这一点,程序员需要: 一个软件平台,用于建立一种新的完整的个人用户经验 一个编程模型和工具,用以建立和整合 xml web 服务 重庆电子工程职业学院 09 级毕业报告 一套能为应用程序和服务提供基础的可编程的服务 Microsoft 的.net 战略就瞄准了这三点。 (3).NET 的优点 Microsoft .NET 为程序员、商业领导、 IT 部门以及消费者带来了很多好处。 相对来说,程序员是比较缺乏的,雇用的费用也很高。然而 Microsoft .NET 使编程工 作变

10、得更加容易,开发投资的回报率也趋最大化。开发者们可以创建能重用的 XML Web 服务,而不再是一个单一的程序;这些 Web 服务易于编程和调试,彼此之间相互 独立,通过 XML message 通讯及合作。所以对某一个服务的修改不会影响到其他的服 务。 由于 XML Web 服务可以被很多 .NET 体验共同使用,所以对一个服务模块的有效 更新,也即更新了所有使用这个模块的.NET 体验。任何编程语言都可以用来编写 XML Web 服务 (如:C 、C+、Visual Basic、COBOL 、Perl 、Python 和 Java 等),所以 你的程序员可以选择他们最熟悉的语言来编程,这大

11、大提高了开发效率。更值得一体 的是,他们并没有因使用了不同的语言而失去服务或跨组件的调试能力。 总之,Microsoft .NET 是 Microsoft 的 XML Web 服务的平台。这是下一代的 Internet 计算模型,各个 XML Web 服务之间彼此是松耦合的,通过 XML 进行通讯, 协同完成某一特定的任务。Microsoft .NET 战略提供了一个用以建立新.NET 体验的软 件平台、一个编程模型、用以建立和整合 XML Web 服务的工具以及一套可编程的 Web 接口。 BLOG 相关介绍 虽然现在人们更多的是在谈论 BLOG 的人文氛围、 BLOG 的商业经营价值,但从

12、 这种 新的网络文化的演变过程中可以看到,是 BLOG 技术的出现使得每个人可以零成本、 零维护地创建自己的网络媒体,是 BLOG 站点所形成的网状结构促成了不同于以往社 区的 BLOG 文化。BLOG 技术缔造了“博客” 文化。就像人类发展史中,工具成为每个 历史时期的象征一样,各种文化的诞生恰恰是由于工具本身的进步。不经意间,BLOG 竟如雨后春笋般冒出来,博得了越来越多网民的欢心,并引发了各种新的应用热潮。 它最大的吸引力在于,只要你会发邮件,就可以轻松创建自己的网络媒体。 (1)BLOG 的起源 一直以来,想弄清楚 BLOG 的起源问题,想弄清楚这个东西的来龙去脉,可是在 网上搜索了一

13、段时间,阅读了一些文章后,才知道有很多种说法,一时我也弄不清楚 该相信谁的,只能将几种说法,列举一二。 说法一: 1997 年,BLOG 这个词汇被 John Barger 创造出来,1999 年之后它得到了发展迅 速,这还要得益于麦特德拉吉的一则有关克林顿和一位白宫实习生暧昧关系的报道, 这则报道引起的各种思考到现在也没有完全停止。德拉吉报道(Drudge report)其中的 重庆电子工程职业学院 09 级毕业报告 一个影响是人们开始思考个人网络出版的可能性及其可能对未来生活造成的影响。同 年,美国一家小软件公司 Pyra 的三个创始人为了开发一个复杂的 “群件”,编写了一个 小软件,目的

14、是便于交流想法和团队协作。使用的过程中,他们发现这个小软件对普 通人也很有用,于是他们共享了这个软件。这就是 BLOG 的起源,这个公司就是后来 鼎鼎大名的 B 的前身。BLOG 提供了人们一个实践的机会,操作简单,个 人几乎不需要任何技术就能轻松上阵。简单易用而且完全免费,降低了进入成本,所 以从 1999 年初到 2002 年底,Blogger 人数从近百人壮大到近百万。 说法二: 一对 1977 年出生的小夫妻,一个无事可做,不甘寂寞写起了网络日志;另一个找 不到体面工作,就在家编编电脑程序。没想到,他们从自家卧室里捣腾出的小公司竟 然引发了网络新兴势力博客网站的革命,如今更成为全球最大

15、的商业化 BLOG 服 务提供商。而这夫妻俩不仅年纪轻轻就当起了富翁,而且成为博客发展史上不可取代 的人物。 本特洛特和梅娜 特洛特都出生在 1977 年,两人生日仅差 6 天,这就是“相隔六天“ 公司名字的来历。创建这个公司后,特洛特夫妇燃起了互联网博客(英文为 BLOG,即 网络日志) 网站的熊熊火焰,在 BLOG 技术革新史上奠定了行业鼻祖的地位。如今,这 家位于旧金山的公司已成为全球最大的商业化 BLOG 服务提供商。 如今,“相隔六天 “已拥有 70 多名员工、700 万用户,其中仅付费用户就达 100 万。 特洛特夫妇已经成为博客领域最强大的夫妻档。 2001 年初,梅娜厌倦了互联

16、网泡沫后的无聊生活,开始建立自己的博客网站。梅 娜说:“当时,我想我已不可能在现实世界中出名了,但或许可以在网络世界出出名。 “梅娜所写的个人网络日志赢得了一批拥趸。在日志上,她大谈少女情怀、成长点滴, 还大胆表露的喜好,比如她不喜欢有人在公共场合剪指甲,比如她对 1972 年一部灾难 片的迷恋等。 梅娜在拼命写个人日志的时候,丈夫本却迟迟未找到一份体面的电脑程序师工作。 失意的本开始编一个程序,这个程序就是后来针对个人用户的 BLOG 发布软件 Movable Type(简称 MT),这也是目前最为流行的个人 BLOG 发布系统。 2001 年 9 月,本特洛特刚把 MT 软件放到网上一个小

17、时,就有 100 个人下载。本 和梅娜觉得这是个好机会,就干脆把自家的卧室变成了创业室,成立了“相隔六天“ 公 司。一开始,他们只是希望能赚点钱维持日常花销,但是没想到财源滚滚而来。 硅谷风险资本家乔伊伊托看到了商机,很快就找上门来,表示愿意进行风险投资。 最终,特洛特夫妇把公司的部分股份以 1150 万美元的价格卖给了伊托和其他风险资本 家。 如今,从卧室两台电脑起家的这家小公司已经成为 BLOG 业的一条大鱼。最近, Google 和微软这两个大玩家各自推出了 B 服务和 MSNSpace 服务,为的就 是跟“ 相隔六天“ 这个最强有力的竞争对手相抗衡。2004 年被称为博客年,而 200

18、4 年 重庆电子工程职业学院 09 级毕业报告 个人电脑杂志评出的五个年度人物中,两个就是特洛特夫妇。 (2)BLOG 展望 总体展望: BLOG 与 BBS,及网络论坛内的留言相比更能有机的组织个人的言论并与他人自 由的交流,实际上它的个性化更强;倒是和个人网站有些接近,但是用户友好性要好 得多,并且得益于一些新兴技术的支持,可能拥有更加灿烂的未来。 从前的互联网使用 HTML 描述信息,大家彼此是孤立的。BLOG 使用基于 XML 的 RSS 内容描述协议,使得大海中的孤岛彼此可以识别和交流,相信慢慢的、BLOG 会促进互联网络的改进,但是 BLOG 本身将会走向何处,窃以为很难预测。 大

19、部分人都认为博客将继续受到大众欢迎,而其未来的发展却是不确定的。Hunter 断言,由于很多网站都增加了博客功能,同时新闻站点亦变得“博客化” ,博客将会一 直存在。有两点是可以肯定的:博客与传统媒体的竞争日趋激烈;博客的新用法将会 不断浮现。 教育 BLOG的展望: 任何一种新技术、新产品、新思想的创新与扩散对社会的发展都起着重要的推进作 用,因此,人们十分关注创新扩散规律的研究。 1995 年,美国新墨西哥大学埃弗雷特.罗杰斯教授研究了 3000 多个有关创新扩散的 案例,发表了创新扩散一书,提出了著名的创新扩散 S-曲线理论(S-shaped curve)。 罗杰斯认为,创新的扩散总是一

20、开始比较慢,然后当采用者达到一定数量(即“临界数量” )后,扩散过程突然加快( 即起飞阶段 take-off),这个过程一直延续,直到系统中有可能 采纳创新的人大部分都已采纳创新,到达饱和点,扩散速度又逐渐放慢,采纳创新者 的数量随时间而呈现出 S 形的变化轨迹。罗杰斯把创新的采用者分为革新者、早期采 用者、早期追随者、晚期追随者和落后者等几个发展阶段。 罗杰斯认为,创新扩散总是借助一定的社会进行的,在创新向社会推广和扩散的过 程中,信息技术能够有效地提供相关的知识和信息,但在说服人们接受和使用创新方 面,人际交流则显得更为直接、有效。因此,创新推广的最佳途径是将信息技术和人 际传播结合起来加

21、以应用。 系统开发背景 随着互联网技术的日趋成熟,各种信息化实体不断应运而生并得到了快速发展, 从单一的模式到现在复杂的服务端、客户端的交互,不得不令人惊叹和喜悦!人们在 充分享受互联网带来的各种便利时,一种新型的网络实体也日渐地出现在人们的视野, 那就是当前网络界较为流行的实体之一博客(BLOG),当然这绝不仅仅是一种单向 的发布系统,它有着极其出色的交流功能,在以往的几种网络交流方式中,BBS 过于 公共化,而 Email 和即时通信工具 IM 则有很明显的私人性质,BLOG 的出现则将公共 重庆电子工程职业学院 09 级毕业报告 性和私人性很好地结合起来。它代表着一个新型媒体时代的到来,

22、而且作为专业领域 的知识传播模式,它有可能成为该领域最具影响力的”人物” 之一;另一方面,它也将 推动各种“精神共同体 ”的形成,打破传统媒体和传统交往时间和空间上的限制、社会 精英独霸话语权的局面,且极大地增加个人的社会资本,博客作为一种快捷方便的信 息交换方式,将和那些不久还会出现的更多的有效的技术手段一起,成为构建新社会 的强劲动力。 因此,基于 BLOG 的多种优势和未来的发展趋势,所以有必要设计这样的一个 BLOG 系统。虽然目前国内众多 BLOG 系统已经诞生,并得到充分的发展,大到多用 户、功能强大、复杂性的系统,小到网络日记本形式的“BLOG”,通过对该系统的开发, 以此加深对

23、 BLOG 的认识、研究简单 BLOG 系统开发途径和应用方法,并为以后设计 复杂 BLOG 系统打下坚实的基础。 本次设计所开发的 BLOG 系统是以 VS2003 + SQL sever 2000 为编程环境,以.NET 框架中的 C#.NET 来实现其制作和开发过程(IE6.0)。在目前多数的 BLOG 系统中, .NET 原型的系统并不是很多,而多以 ASP 等为主流,这在很大程度上使个人的设计减 少了一定的参考性,此外虽然.NET 的发展时间并不是很久,但.NET 的发展趋势也是 显而易见的,当然这就要谈到.NET 的优势所在,这里不在追述。通过对 BLOG 系统进 行可行性分析、需

24、求分析和设计逐步将一个 BLOG 系统的开发过程呈现出来,当然也 没有刻意追求专业性和商品化软件的华丽包装,而是本着简单、实用、性能优化的原 则。 系统开发意义 从 BLOG 系统的诸多媒体优势可以看出,设计这样一个博客 (BLOG)系统;一方面, 能为人们提高写作水平的提供“基地” ,为爱好写作的人们提供了一个提高写作水平的 好园地,成为大众文字表达的好场所,博客写作比较自由随意,可以不断的更改增新, 有利于写作水平的快速提高和思想敏锐性的进一步增强。也能成为行业专业人才的交 流场所,为一些各行业的专业技术人员提供一个技术交流平台,诸如:IT 技术、教育 技术、管理技术等一些专业性的知识,可

25、以通过博客得到相互学习,取长补短,从而 解决疑难之谜。另一方面,使得意见表达也更完整、更系统,无论是对问者还是答者, 都十分方便,不像论坛那样大海捞针,博客相对更有秩序一些,此外有利于规范网上 言论秩序,在个人博客里,多数人乐于亮明自己的身份。他们一般都会珍惜机会,责 任感很强,从容不迫,不急于慌不择言,更重视自己“水平” 的体现,因而博客里大大 减少了一些人们所谓的垃圾文字,从而有利于维护汉语言文字的纯洁性和规范化,它 还能为企业和求职者提供了一个伯乐选千里马的职场,博客为他们各自所需创造了一 个高效的网络职场。企业们要找适合自己的人才难度就大减少。而求职者也不用花太 多的时间在招聘现场的人

26、群中拥挤了,随着演变,博客的形式会越来越多样性。 系统开发目标 通过利用 C#进行 ASP.net、ADO.net 的应用程序开发,使用 Code Behind 方式来实 重庆电子工程职业学院 09 级毕业报告 现,使前台界面和后台代码分离,通过利用类的继承、重用,以及函数的公用来尽量 精简代码,此外,注意系统以后的就阅读性和可维护性。在开发中,不去一味的使用 Web 服务组件,能巧妙的结合其他方式来实现,将不适合或没必要在服务端运行的放 至客户端完成,在一定程度上减少服务端资源的损耗。提高系统的整体性能。在功能 实现上,完成目前存在的 BLOG 系统大部分的功能,提供良好的用户界面(方便交互

27、 操作) ,并能在此基础上尽可能的设计出较为新颖和更实用的功能。大致主要实现以下 几点: 便捷后台文件添加、编辑、复制、剪切,包括目录操作、文件大小、日期显示 等 实现日志的发表、浏览、编辑、删除等 实现像册管理 实现日志搜索(按标题、内容、评论等) 实现站点链接 开发平台、运行环境、测试实施 开发平台:Microsoft .NET Framework 1.1 Visual Studio 2003.NET(C#) Microsoft SQLSERVER 2000 Windows 2000+IIS5.0+IE6.0 运行环境:Windows 2003 / 2000 / XP 安装 .Net Fr

28、amework 1.1 或 Visual Studio 2003.NET 安装 IIS5.0 以上版本 数据库 Microsoft SQLSERVER 2000 以上版本 适合以上环境本系统可正常运行 实现方式:B/S 模式,本地运行、远程访问皆可 如果你在前面已经拥有了本系统的运行平台,如上所要的配置后,则可继续通过以 下步骤来运行本系统。 2 需求分析 系统构成 1.1.1 系统组成及功能 本系统由以下多个子模块组成:用户登录、用户注册、页头和页尾的处理模块(用 户控件) 、管理员后台管理(包括 BLOG 配置、分类管理、站点文件在线编辑与管理、 会员管理、BLOG 表情管理、日志中自动识

29、别的关键字管理、友情链接管理、友情链 接验证、用户收藏的 URL、服务器的相关信息、骂人词语的管理等) 、BLOG 编辑模块、 友情链接提交与显示模块、BLOG 发表模块、RSS 订阅模块(1.0&2.0) 、BLOG 浏览模 块、独立 IP 访问统计分析模块、验证码实现模块、 BLOG 评论列表模块、BLOG 首页 重庆电子工程职业学院 09 级毕业报告 处理模块、注册用户 URL 收藏模块(提交、显示) 、会员信息显示模块(单用户、多用 户、信息编辑)、站点信息搜索模块(Google 站内、系统本身) 、文件上传模块、公用 导航模块(用户控件) 、公用类模块、全局变量和在线用户的记录、开启

30、站点模块、工具 模块等,各模块的详细功能如下所述: (3)页面头部处理模块 该模块主要实现的是从数据库中读出 BLOG 分类信息列表 (分类由管理员在后台设 定),统计用户访问信息(IP、时间、来源 URL、浏览器、操作系统、屏幕宽度、语言、 COOKIE、入口地址,搜索关键字等),同时获得全局使用的总访问人数,当然这些操 作也可以在 Global 里来完成,效果是一样的,因为我的每个页面都包含了页面头部, 但是当有不包含页面头部时将不会统计分析,只需要把相关实现写到 Global 里即可(有 时间再看看)。在统计访问者的信息时,实现了防止刷新的功能,同一个 IP,一定时间 内将不会重新统计,

31、同时如果支持穿过代理获得 IP 的话,统计的是真实的 IP,而不是 代理的 IP。 (4)页尾处理模块 该部分主要解 决的是系统的版权信息,页面执行时间的显示等,比较简单。 (5)管理员后台管理模块 该模块涉及的东西比较多,用于实现对系统数据和相关信息的管理和配置等。具 体描述如下: BLOG 系统的配置:主要是完成站点标题的配置 ,站点 URL 和首页每页显 示的 日志数,这些操作不是在数据库里来完成的,也没有这个必要因为取一个数,就要 查询数据库,我放到了站点配置文件里 Web.config 里,后台 采用相关方法,修改 该 XML 类型的文档,从而达到修改站点配置的目的,不过每次使用该选

32、项时,系 统将会从新执行。同时也支持修改用户上传文件大小和时间的限制、数据库连接配 置等设置,也可配置管理员的邮件地址,以便作为批处理发送系统邮件的帐户。 站点文件管理:主要实现的是 BLOG 系统文件的在线管理(增加、删除、 修改、 移动、重命名等,对目录的操作同样) ,可查看附件(文件信息、上传时间、文件类 型等),不同文件显示不同图标,目录也可显示目录占用空间大小,作为管理用户 上传的附件来说还是有必要的且比较实用,唯一不足的是,当系统文件较多时,性 能会有所影响,便历目录需要时间。当然这个可不是木马_,它的执行需要系统 给予一定的权限。 友情链接管理:主要实现的是对用户提交的链接进行管

33、理,包括链接名称、 URL、图片(相对路径、绝对路径)、是否首页显示,同时链接图片可预览,和上面不 重庆电子工程职业学院 09 级毕业报告 同的是,此处操作支持批处理,主要是首页显示,管理员可选中头部的首页显示, 从而将下面所有的 CheckBox 选中,再执行批处理设定,当然,可对特定选择的多 条记录同样处理,此外增加了省略显示的功能,就是当某条记录的长度过长时,截 取了该记录的前面固定长度的串,加” 显示出来。同时在增加友情链接的时,可 增加其链接名称、URL、图片、排序等信息,当然也严格检查了提交的信息。另一 方面与上同,分页、确认删除 友情链接验证管理:主要实现的是对用户提交的友情链接

34、进行验证,显示 需验 证链接,是否首页已显示(当然默认是不会的),没通过验证的,将不会显示出来; 不通过首页显示验证的,将不会在首页显示,在对验证、删除进行处理时,也采用 批处理的操作,这和上面有所不同,实现了全部验证、全部删除的操作。 服务器的相关信息:这是默认显示的,在登陆后台时,主要显示当前服务 器的 相关信息,如服务器时间、域名、IP、端口、服务器 IIS 版本、脚本解释引擎、服 务器空间占用情况、站点的物理路径、服务器的名称、脚本超时、服务器开机后执 行的时间、服务器 CPU 的数量、CPU 的类型、服务器操作系统、.NET Framework 版本、USER_AGENT 信息、常用

35、组件支持情况、自定义组件查询、1000 万次循环 检测执行时间等,能给管理员对服务器的一些情况有一点了解。 (6) BLOG日志发表模块 该模块主要完成了 BLOG 日志提交的功能,也是 BLOG 系统中比较重要的一个环 节了,同时该部分处理的也比较复杂,在这里我采用了两种模式(UBB、HTML) 在线进 行编辑、提交,用户可根据自己的需要进行选择互换使用,并查看帮助信息,当然这样 做并不是多余的,因为我发现有的时候纯粹的使用单一的模式有一定的不方便。在这 两种模式下,都可以插入表情图片、识别关键字、识别超级链接、禁止 UBB 代码、禁 止表情、禁止图片等操作,在 UBB 编辑器方面,完成了以

36、下的功能支持: 加粗字体、斜体字、下划线字体、删除线字体、上标字、下标字、居中显示、飞 行文 字、滚动文字、闪光文字、阴影文字、超级链接、Email、图片、 Flash、 shockwave、RealPlayer 媒体、Windows Media 媒体、QuickTime 媒体、Winmap 媒体、代码片段、引用、项目符号、水平线、文件下载、网页框架、字体、字体大小、 字体颜色、段落样式等。 (9)BLOG评论列表显示模块 该模块主要完成用户评论信息的汇总,包括个人评论的汇总、所有用户评论的汇 总 重庆电子工程职业学院 09 级毕业报告 以及用户搜索评论的汇总三个子部分,显示了评论的作者、评论

37、的日期、评论的内容、 是否为隐藏的日志(是则隐藏评论)、同时管理员可删除评论、查看 IP 信息。考虑到多 条评论记录时,采用了分页存储过程来完成分页,并写了简单的分页算法代码(有一定 的规律性),并支持自定义页面跳转。在分页处理时,作为 URL 参数来传递,同时也 对评论内容进行 UBB 或 HTML 转换,对评论的表情、关键字、超级链接、禁止图片 和 UBB 等进行了同上的处理。 (10)首页处理模块 由于该页面由三部分组成,页头、页尾、左边导航、主要显示日志。这里主要完 成的是显示系统的所有日志,每页日志的条数由管理员在 config 里定义,对于日志的 分页显示也同样采用存储过程方式进行

38、,并支持自定义跳转,采用视图查询,增强了 系统的安全性。显示时,显示日志作者、标题、天气、发表日期、来源、日志摘要、 所属分类、评论总数、引用数、查看次数,以及是否置顶,是否为隐藏日志,实际上 这个处理相对比较简单,因为多由用户控件组成,在这些控件里已完成了部分的内容。 (12)友情链接提交与显示模块 该模块实现的是友情链接的提交、当前友情链接显示等,包括图片链接、文字链 接,图片限制以 88*33 象素为准,防止影响界面,至于显示出来,这个比较简单,图 片和文字的 DataList 进行数据绑定就可以了,当有用户提交友情链接申请时,将对提 交信息进行检查,提交成功后,将提示等待管理员验证才可

39、以显示首页或本页。其他 部分调用页头、页尾、公用导航控件。 (18)作品展示模块 该部分主要完成在用户发表日志、发表评论时对上传附件(包括图片、UBB 的中的 所有视频、文件等)的处理,当然上传附件是需要管理员以上的权限的,这在该页面也 通过 Session 来检测的,当然采用 Session 并不是不安全, Session 的数据是从加密的 COOKIE 读到的,所以不用担心不安全。当用户没有该权限时,将会给出提示,当文 件上传成功时,将给出提示,并显示给文件的类型(如 Image/Jpeg)、大小、上传的目录, 此外对上传文件大小的限制,我设置为 2M(对于检测文件大小,我想是不能放到服务

40、 端进行的,如果文件太大的话,所以在客户端进行检测,采用了 JS,FSO 判断不是好 使,暂时没完善 ) ,超时时间为 120s。当选择上传文件为空时,也将给出提示,如果 文件不为空且大小符合要求,将会检查文件类型是否合法,同通过定义一串数组,存 放不可上传的文件类型,比如 html、asp、asa、cgi、hta、exe 、vbs、dll 等,上传此类 型的将提示非法,如果是合法文件,将会上传到系统目录下的 upload 里,不存在将自 动创建该目录,同时创建年月日格式的文件夹,不存在将自动创建,存放当前文 件,同时文件将重新命名为“时分秒”的格式,然后开始上传,上传成功后,将根据 文件类型

41、,增加代码到评论或发表日志的文本框,比如是 FLASH 文件,则自动添加 重庆电子工程职业学院 09 级毕业报告 UBB 相同的代码,当然还有图片、其他媒体等类似处理,如果上传的文件类型不能用 UBB 来显示,则直接设定为普通文件,供下载(添加到父框架) ,用户点返回后将可 再次上传,此外对于多文件上传,也很容易实现,可以动态的根据用户选择上传几个 文件而增加上传浏览框,加入到上传集合中即可,上传路径从配置文件里读取。 2.1.1 系统实现方案 首先,根据系统功能的详细分析,在配置好开发平台、运行环境后,我先从系统 的后台开始设计,因为前台数据的显示或管理都需要后台的支持,所以在后台的第一 个

42、模块服务器基本信息开始,直至顺序完成整个后台部分(系统设置、分类管理、会 员管理、链接管理验证、书签管理、表情、关键字、骂人词语屏蔽管理、文件管理等) 。 然后在后台支持的基础上,对前台进行顺序开发,日志发表、编辑、日志浏览(评论、 分页、注册、内容过滤) 、评论搜索、会员信息(整体、个人、编辑) 、再 到首页总体显示的实现。逐个模块的完成、完善、性能思考等。大多数情况下,不仅 仅单一的依靠 VS 来编写,也是要考虑到手工编写,因此我觉得这样做是最好的解决方 案,尤其是对性能的影响,当然在实现方法上,某些地方可能做得不是很好,有待于 以后改进! E-R 关系 (1)总体简化 E-R关系图 注:

43、以下图为 Microsoft Visio 2003 设计完成并导出为 JPG 图片(Photoshop 压缩)。 图 2.1 总体简化 E-R关系图 重庆电子工程职业学院 09 级毕业报告 图 2.2 用户信息管理简化 E-R关系图 (3)作品管理 E-R关系 图 2.3 作品管理简化 E-R关系图 (5)友情链接简化 E-R关系 图 2.5 友情链接简化 E-R关系图 重庆电子工程职业学院 09 级毕业报告 数据存储 本系统选择 SQLSERVER 做后台数据库,而没有选择 ACCESS 来开发,原因主要 有以下几点: ACCESS 是面向小型的,而 SQL 是面向大型的应用。由于在容量方面

44、,ACCESS 有极限,所以到了一定极限之后,很容易造成服务器 IIS 假死或者吃光机器内存,而 SQL 则可以完全修复这些问题,而且相对而言 SQL 的数据备份也比较方便,功能强大 很多。在速度性能方面前者也比后者逊色许多,如果稍做测试,比如 10000 条记录, 会发现 SQL 可能比 ACCESS 快 1020 倍。另外,做单层系统可用 ACCESS,而做两 层或多层则用 SQL。而且在安全性能上讲,SQL 也还是比较好些,它有针对不同访问 用户的权限设置。当然,具体的 DBMS 各有各自己的特性,和优点,例如跨平台性、 性能、安全性等。所以适用的行业和范围就有所不同,就比如电信行业来说

45、,一般只会用 orcale,DB2 之类的大型关系型数据库.而中小型企业用 MS 的 SQL sever 多一些。所以 考虑到系统在以后实际使用中的问题,不能使用 ACCESS 数据库,而选择 SQLSERVER 来存储、处理数据很有必要。在使用 SQLSERVER 时,针对其特点灵活 应用过程、语句等。 如果转化为 SQLSERVER 也并不是很费时,只是涉及如区别函数、对应字段时要 修改,如 ACCESS 的 now 与 SQL 的 GetDate()。 逻辑分析 3.1.1 数据流图 用户级简化数据流图: (1)顶层 图 2.11 用户级数据流图:顶层 重庆电子工程职业学院 09 级毕业

46、报告 (2)0 层 图 2.12 用户级数据流图:0 层 (3)1 层 重庆电子工程职业学院 09 级毕业报告 图 2.13 用户级数据流图:1 层 4.1.1 数据字典 (1)数据流词条描述 (2)数据元素词条描述 (3)数据文件词条描述 (4)加工逻辑词条描述 (5)源点及汇(终) 点词条描述 具体的描述略,数据项、数据流、数据文件、数据元素、加工逻辑等描述和上面 流图的设计相对应,比较简单。 重庆电子工程职业学院 09 级毕业报告 5.1.1 系统边界 该系统边界没有向 UML 用例图中的的样式表示,下面简要的阐述一下。 由于“系统”具有相对性,不同边界的系统其组成不同,目标不同。要求实

47、现的 功能也不同。因此,在描述系统时,首先要定义系统边界。让其反映系统在职能、功 能方面的边界,系统的可行性研究、总体设计、详细设计、开发和运行均是在这些边 界内进行。 (1)系统的职能边界 系统的职能边界定义为超级管理员管理范围内的主要功能。 (2)系统的功能边界 系统在功能上覆盖日志发表、编码标准、系统异常处理、XML 处理(RSS) 、外部 引用、性能优化等,为不同的用户提供所需的信息与管理,并通过系统实现文档存储 检索、信息共享。 系统实现的关键技术 (1)正则表达式:用户匹配或替换文本内容,如 UBB、注册验证、特定参数检查多 处用 (2)存储过程:几乎在每个模块都使用了该方式,当然

48、有的地方使用存储过程是不佳 的, 不过在这些地方我直接用了 SQL 语句,这里设计的存储过程有复杂的也有简单 的,简单查询、更新、插入,还有通过计算、判断、多重语句、分页 (3)XML:主要是操作与读取 Web.config 文件和做 RSS 订阅方面用到一点 (4)文件处理:后台文件的编辑、处理以及文件信息的查看,服务端空间占用、文件 上 传等都有用到 (5)简单算法与面向对象应用:比较零散 (6)WebForm:ASP.NET&ADO.NET 技术,主要是综合的应用 (7)数据绑定:在操作 DataGrid 等控件时,需要反复的绑定,比如删除、编辑、分页 后 要重新的绑定,DataList

49、、DownList 同样应用 (8)控件、组件:DataGrid、DataList 、用户控件 (9)编码安全:COOKIE 实现与加密、参数过滤、密码加密 (10)统计分析:简单的数据分析 (11)图形图象:验证码的生成和其他动态加载的处理、统计分析 (12)SQL 编码与脚本:各地方实现方式、条件不同 ,在系统 SQL 脚本和代码皆有 (13)HTML、CSS、Javascript、Dreamweaver、Photoshop (14)分页技术:包括控件的分页(自定义分页算法)、存储过程分页 重庆电子工程职业学院 09 级毕业报告 3 概要设计 设计原理 根据以上详细的需求分析,可以确立系统核心是对前后台主要部分的分析与概括, 而这些概括和分析内容中,对信息是如何表示出来的,以何种形式表现,通过界面形 式、数据形式等,下面将对其作简要的阐述。 系统前台的主要部分在于日志发表、日志浏览、以及日志编辑等处,用什么样的方 式去实现,如何实现?设计前这样的考虑是很有必要,对于其后的设计思路也是至关 重要的。首先考虑的是页面的布局处理,这里的主要任务是将 WEB 页面合理分割成用 于安

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1