动态服务网页网络交流系统.docx
- 文档编号:27384722
- 上传时间:2023-06-30
- 格式:DOCX
- 页数:32
- 大小:174.15KB
动态服务网页网络交流系统.docx
《动态服务网页网络交流系统.docx》由会员分享,可在线阅读,更多相关《动态服务网页网络交流系统.docx(32页珍藏版)》请在冰豆网上搜索。
动态服务网页网络交流系统
动态服务网页网络交流系统
摘要
为了方便网络信息的交流,在结合动态服务网页(ASP.NET)技术和SQL数据库技术以及常用的C#语言网页制作工具VisualStudio.NET等之下开发了这个快截、界面友好的网络交流系统。
本设计使用动态服务网页(ASP.NET)技术建设,使用SQL制作系统的数据库,实现了一个功能相对齐全的聊天设计系统,网友可以自由地申请和登陆以及与他人沟通,或者交流经验。
该聊天室功能较齐全,在这里可以自由地发表自己的语言和各种表情的表达,我们还可以用管理员登陆来在线管理聊天室内的用户。
聊天室还有一些特殊的功能,如在线人员显示、互相悄悄话等。
整个个性化页面生成系统主要由使用VisualStudio.NET开发的关联规则采掘系统和利用IIS+ASP.NET技术实现的个性化Web页面生成器两部分组成。
关联规则采掘系统对数据库中的历史记录进行分析,产生用户关联规则表;页面生成器则负责记录用户行为和根据关联规则表动态生成用户个性化Web页面。
二者通过数据库服务器和Web服务器连接。
本文作者主要完成Web客户端及后台管理中的用户管理、言论管理、版面管理、数据库管理、浏览和查找、短消息功能等设计、实现与完善以及整个实验网站的组织建立和测试工作。
关键词:
动态服务网页,聊天室
目录
第1章绪论1
第2章开发技术及运行环境2
2.1ASP.NET技术的使用2
2.1.1ASP.NET的介绍2
2.1.2ASP.NET技术的使用3
2.2SQLServer2005的使用4
2.3应用MVC结构6
2.3.1MVC设计思想6
2.3.2MVC设计模式的实现7
2.4应用C#编程语言8
2.5系统流程的实现11
第3章总体设计13
3.1项目规划13
3.2使用操作描述13
3.3数据库设计13
3.3.1数据库字典13
3.3.2数据库实体分析16
第4章详细设计18
4.1后台管理功能实现18
4.2前台功能的实现20
第5章编码实现22
5.1显示信息的代码22
5.2修改操作数据的代码实现23
第6章软件部署27
6.1系统运行环境需求27
6.2程序工作环境需求27
总结28
致谢29
参考文献30
第1章绪论
Internet是目前世界上最大的计算机互联网络,它遍布全球,将世界各地各种规模的网络连接成一个整体。
作为Internet上一种先进的,易于被人们所接受的信息检索手段,WorldWideWeb(简称WWW)发展十分迅速,成为目前世界上最大的信息交流宝库。
据估计,目前Internet上已有上百万个Web站点,其内容范围跨越了教育科研、文化事业、金融、商业、新闻出版、娱乐、体育等各个领域,其用户群十分庞大,其中以交友为目地的交友聊天网站更是层次不群,因此在大海一样的网络中建设一个好的Web站点对于一个机构的发展十分重要。
近年来,随着网络用户要求的不断提高及计算机科学的迅速发展,特别是数据库技术在Internet中的广泛应用,Web站点向用户提供的服务将越来越丰富,越来越人性化。
我们发现这样一个事实,一个用户在访问一个网站时一般来讲只对该网站的部分内容感性趣,而且这种兴趣会持续一段时间。
这点启发了我们,如果能根据用户的喜好为不同的用户进行即时的沟通,将有十分美好的前景。
要实现这样的功能,离不开后台数据库的支持。
用户验证信息,收集到的用户点击信息,主题层次信息,分析得出的关联规则表等大量的数据都由数据库管理系统管理。
本文中数据库服务器端采用了MicrosoftSQLServer数据库作为SQLConnection数据源,并以先进的ADO(ActiveXDataObjects)技术进行数据库存取等操作,使Web与数据库紧密联系起来。
第2章开发技术及运行环境
2.1ASP.NET技术的使用
2.1.1ASP.NET的介绍
ASP.NET不仅仅是下一版本的ActiveServerPage(ASP);它是统一的Web开发平台,用来提供开发人员生成企业级Web应用程序所需的服务。
ASP.NET的语法在很大程度上与ASP兼容,同时它还提供一种新的编程模型和结构,用于生成更安全、可伸缩和稳定的应用程序。
可以通过在现有ASP应用程序中逐渐添加ASP.NET功能,随时增强该ASP应用程序的功能。
ASP.NET是一个已编译的、基于.NET的环境,可以用任何与.NET兼容的语言(包括VisualBasic.NET、C#和JScript.NET.)创作应用程序。
另外,任何ASP.NET应用程序都可以使用整个.NET框架。
开发人员可以方便地获得这些技术的优点,其中包括托管的公共语言运行库环境、类型安全、继承等等。
ASP.NET可以无缝地与WYSIWYGHTML编辑器和其他编程工具(包括MicrosoftVisualStudio.NET)一起工作。
这不仅使得Web开发更加方便,而且还能提供这些工具必须提供的所有优点,包括开发人员可以用来将服务器控件拖放到Web页的GUI和完全集成的调试支持。
在创建ASP.NET应用程序、Web窗体和Web服务时,我们可以选择下列两个功能,或者以他们认为合适的任何方式将它们结合起来使用。
每个功能都能得到同一结构的支持,使我们可以使用身份验证方案,缓存经常使用的数据,或者对应用程序的配置进行自定义,这里只是列出几种可能性而已。
“Web窗体”用于生成功能强大的基于窗体的Web页。
生成这些页时,可以使用ASP.NET服务器控件来创建公共UI元素,以及对它们进行编程以用于执行常见的任务。
这些控件使您能够用可重复使用的内置或自定义组件生成Web窗体,从而简化页面的代码。
ASP.NET是一种建立在通用语言上的程序构架,能被用于一台Web服务器来建立强大的Web应用程序。
ASP.NET提供许多比现在的Web开发模式强大的优势。
ASP.NET是把基于通用语言的程序在服务器上运行。
不像以前的ASP即时解释程序,而是将程序在服务器端首次运行时进行编译,这样的执行效果,当然比一条一条的解释强很多。
因为ASP.NET是基于通用语言的编译运行的程序,所以它的强大性和适应性,可以使它运行在Web应用软件开发者的几乎全部的平台上。
通用语言的基本库,消息机制,数据接口的处理都能无缝的整合到ASP.NET的Web应用中。
ASP.NET同时也是language-independent语言独立化的,所以,你可以选择一种最适合你的语言来编写你的程序,或者把你的程序用很多种语言来写,现在已经支持的有C#(C++和Java的结合体),VB,Jscript。
将来,这样的多种程序语言协同工作的能力保护您现在的基于COM+开发的程序,能够完整的移植向ASP.NET。
并且ASP.NET使运行一些很平常的任务如表单的提交客户端的身份验证、分布系统和网站配置变得非常简单。
2.1.2ASP.NET技术的使用
1)可管理性:
使用基于文本的、分级的配置系统,简化了将设置应用于服务器环境和Web应用程序的工作。
因为配置信息是存储为纯文本的,因此可以在没有本地管理工具的帮助下应用新的设置。
配置文件的任何变化都可以自动检测到并应用于应用程序。
2)安全:
为Web应用程序提供了默认的授权和身份验证方案。
开发人员可以根据应用程序的需要很容易地添加、删除或替换这些方案。
3)易于部署:
通过简单地将必要的文件复制到服务器上,应用程序即可以部署到该服务器上。
不需要重新启动服务器,甚至在部署或替换运行的已编译代码时也不需要重新启动。
4)增强的性能:
是运行在服务器上的已编译代码。
与传统的ActiveServerPages(ASP)不同,能利用早期绑定、实时(JIT)编译、本机和全新的缓存服务来提高性能。
5)灵活的输出缓存:
根据应用程序的需要,可以缓存页数据、页的一部分或整个页。
缓存的项目可以依赖于缓存中的文件或其他项目,或者可以根据过期策略进行刷新。
6)国际化:
在内部使用Unicode以表示请求和响应数据。
可以为每台计算机、每个目录和每页配置国际化设置。
7)移动设备支持:
支持任何设备上的任何浏览器。
开发人员使用与用于传统的桌面浏览器相同的编程技术来处理新的移动设备。
8)扩展性和可用性:
被设计成可扩展的、具有特别专有的功能来提高群集的、多处理器环境的性能。
此外,Internet信息服务(IIS)和运行时密切监视和管理进程,以便在一个进程出现异常时,可在该位置创建新的进程使应用程序继续处理请求。
9)跟踪和调试:
提供了跟踪服务,该服务可在应用程序级别和页面级别调试过程中启用。
可以选择查看页面的信息,或者使用应用程序级别的跟踪查看工具查看信息。
在开发和应用程序处于生产状态时,支持使用.NETFramework调试工具进行本地和远程调试。
当应用程序处于生产状态时,跟踪语句能够留在产品代码中而不会影响性能。
10)与.NETFramework集成:
因为是.NETFramework的一部分,整个平台的功能和灵活性对Web应用程序都是可用的。
也可从Web上流畅地访问.NET类库以及消息和数据访问解决方案。
是独立于语言之外的,所以开发人员能选择最适于应用程序的语言。
另外,公共语言运行库的互用性还保存了基于COM开发的现有投资。
2.2SQLServer2005的使用
SQLServer2005通过在可伸缩性、数据集成、开发工具和强大的分析等方面的革新更好的确立了微软在BI领域的领导地位。
SQLServer2005能够把关键的信息及时的传递到组织内员工的手中,从而实现了可伸缩的商业智能。
从CEO到信息工作者,员工可以快速的、容易的处理数据,以更快更好的做出决策。
SQLServer2005全面的集成、分析和报表功能使企业能够提高他们已有应用的价值,即便这些应用是在不同的平台上。
商业智能增强体现在以下几个方面:
端到端的集成BI平台,集成服务,分析服务,报表服务,MicrosoftOfficeSystem的集成。
(这里只介绍使用前三种比较好技术)
1、端到端的集成BI平台
MicrosoftSQLServer2005是一个完整的商务智能(BI)平台,其中为用户提供了可用于构建典型和创新的分析应用程序所需的各种特性、工具和功能。
本文简要介绍了您在构建分析应用程序时将要用到的一些工具,并着重介绍了一些新增功能,这些新增功能使复杂BI系统的构建和管理比以往更加轻松。
2、IntegrationServices
SQLServer2005带来了一个全新的企业级数据整合平台。
此平台具有出色的ETL和整合能力,使得组织机构能更加容易地管理来自于不同的关系型和非关系型数据源的数据。
通过SQLServerIntegrationServices(SSIS),组织机构能以整体的视角去考察它们的商业运营情况,从而能具有竞争优势
企业级数据整合平台SQLServerIntegrationServices取代了SQLServer2000中一个非常受欢迎的功能模块——数据转换服务(DTS)。
但SSIS并不是DTS的简单升级,它是SQLServer2005中的一个全新的组件,它提供了构建企业级ETL应用程序所需的功能和性能。
SSIS是可编程的、可嵌入的和可扩展的,这些特性使其成为理想的ETL平台。
传统ETL之外的SQLServer2005支持非传统的数据(WebService,XML):
SSIS可对不持续的数据进行分析;在数据流中的数据挖掘和文本挖掘;数据流中的数据挖掘和分析可用于数据质量和数据清洗。
3、AnalysisServices
在SQLServer2005中,分析服务(AnalysisServices)第一次提供了一个统一和集成的商业数据视图,可被用做所有传统报表、OLAP分析、关键绩效指标(KPI)记分卡和数据挖掘的基础。
统一空间模型UnifiedDimensionalModel通过结合传统OLAP分析和关系型报表中的最佳点,AnalysisServices2005提供了一个元数据模型用于满足不同需求。
AnalysisServices2005中的所有多维数据集和维度定义都可从统一空间模型UDM中查阅。
UDM是一个中心元数据库,其中定义了业务实体、业务逻辑、计算和metrics,可被作为所有报表、电子表格、OLAP浏览器、KPI和分析应用程序的源来使用。
通过使用新的、功能强大的数据源视图特性、UDM可被映射成后台异构数据源宿主,这样便可无需考虑数据的位置。
利用UDM中对业务实体的友好描述、等级导航、多视角、自动平滑翻译为本机语言这些功能,最终用户将会发现浏览公司业务数据是一件容易的事情。
MicrosoftSQLServer2005DataMining(数据挖掘)属于商务智能技术,它可帮助您构建复杂的分析模型,并使其与您的业务操作相集成。
MicrosoftSQLServer2005分析服务中构建了新的数据挖掘平台——一个易于使用的、容易扩展的、方便访问的、非常灵活的平台。
对于以前从未考虑过采用数据挖掘的组织机构,这无疑是个非常容易接受的解决方案。
企业级产品的架构,与SQLServer产品家族商业智能功能的紧密集成,丰富的工具、API和算法,这一切使得我们能基于SQLServer创建新型的商业智能应用程序。
通过它所提供的针对各种商业问题的自定义的数据驱动解决方案,能达到提高生产力、增加利润和减少支出的目的。
2.3应用MVC结构
2.3.1MVC设计思想
MVC英文即Model-View-Controller,即把一个应用的输入、处理、输出流程按照Model、View、Controller的方式进行分离,这样一个应用被分成三个层——模型层、视图层、控制层
视图(View)代表用户交互界面,对于Web应用来说,可以概括为HTML界面,但有可能为XHTML、XML和Applet。
随着应用的复杂性和规模性,界面的处理也变得具有挑战性。
一个应用可能有很多不同的视图,MVC设计模式对于视图的处理仅限于视图上数据的采集和处理,以及用户的请求,而不包括在视图上的业务流程的处理。
业务流程的处理交予模型(Model)处理。
比如一个订单的视图只接受来自模型的数据并显示给用户,以及将用户界面的输入数据和请求传递给控制和模型。
模型(Model):
就是业务流程/状态的处理以及业务规则的制定。
业务流程的处理过程对其它层来说是黑箱操作,模型接受视图请求的数据,并返回最终的处理结果。
业务模型的设计可以说是MVC最主要的核心。
目前流行的EJB模型就是一个典型的应用例子,它从应用技术实现的角度对模型做了进一步的划分,以便充分利用现有的组件,但它不能作为应用设计模型的框架。
它仅仅告诉你按这种模型设计就可以利用某些技术组件,从而减少了技术上的困难。
对一个开发者来说,就可以专注于业务模型的设计。
MVC设计模式告诉我们,把应用的模型按一定的规则抽取出来,抽取的层次很重要,这也是判断开发人员是否优秀的设计依据。
抽象与具体不能隔得太远,也不能太近。
MVC并没有提供模型的设计方法,而只告诉你应该组织管理这些模型,以便于模型的重构和提高重用性。
我们可以用对象编程来做比喻,MVC定义了一个顶级类,告诉它的子类你只能做这些,但没法限制你能做这些。
这点对编程的开发人员非常重要。
控制(Controller)可以理解为从用户接收请求,将模型与视图匹配在一起,共同完成用户的请求。
划分控制层的作用也很明显,它清楚地告诉你,它就是一个分发器,选择什么样的模型,选择什么样的视图,可以完成什么样的用户请求。
控制层并不做任何的数据处理。
例如,用户点击一个连接,控制层接受请求后,并不处理业务信息,它只把用户的信息传递给模型,告诉模型做什么,选择符合要求的视图返回给用户。
因此,一个模型可能对应多个视图,一个视图可能对应多个模型。
模型、视图与控制器的分离,使得一个模型可以具有多个显示视图。
如果用户通过某个视图的控制器改变了模型的数据,所有其它依赖于这些数据的视图都应反映到这些变化。
因此,无论何时发生了何种数据变化,控制器都会将变化通知所有的视图,导致显示的更新。
这实际上是一种模型的变化传播机制。
2.3.2MVC设计模式的实现
本文通过MVC实现了QQ聊天室的功能如下图2-1所示的其中Admin放的是关于后台管理页面,根目录下的几个便是前台的页面显示,我们的主要代码则放在APP_Code这里面,放入实现类和它相应的操作方法,用的时候,可以直接调用。
图2-1项目架构图
2.4应用C#编程语言
1.C#的特点
开发本系统采用的是C#编程语言。
C#是一门简单、现代、面向对象、类型安全、平台独立的组建编程语言,是.NET的关键性语言,也是整个.NET平台的基础,它使程序员能快速的为新一代Microsoft.NET平台开发出应用程序。
它的特点主要是:
(一)简洁的语法
在缺省的情况下,C#的代码在.NET框架提供的“可操纵”环境下运行,不允许直接地内存操作。
它所带来的最大的特色是没有了指针。
与此相关的是,那些在C++中被疯狂使用的操作符(例如:
“:
:
”、“->”和“.,”)已经不再出现。
C#只支持一个“.”,对于我们来说,现在需要理解的一切仅仅是名字的嵌套而已。
C#用真正的关键字换掉了那些的活动模板库(ActiveTemplateLibrary,ALT)和COM搞得乱糟糟的伪关键字,如OLE_COLOR、BOOL、VARIANT_BOOL、DISPID_X等等。
每种C#操作符在.NET类库中都有了新名字。
语法中的冗余是C++中的常见的问题,比如"const"和"#define"、各种各样的字符类型等等。
C#对此进行了简化,只保留了常见的形式,而别的冗余形式从它的语法结构中被清除了出去。
(二)精心的面向对象设计
在C#的类型系统中,每种类型都可以看作一个对象。
C#提供了一个叫做装箱(boxing)与拆箱(unboxing)的机制来完成这种操作,而不给使用者带来麻烦。
C#只允许单继承,即一个类不会有多个基类,从而避免了类型定义的混乱。
整个C#的类模型是建立在.NET虚拟对象系统(VisualObjectSystem,VOS)的基础之上,其对象模型是.NET基础架构的一部分,而不再是其本身的组成部分。
(三)与Web的紧密结合
.NET中新的应用程序开发模型意味着越来越多的解决方案需要与Web标准相统一,例如超文本标记语言(HypertextMarkupLanguage,HTML)和XML。
由于历史的原因,现存的一些开发工具不能与Web紧密地结合。
SOAP的使用使得C#克服了这一缺陷,大规模深层次的分布式开发从此成为可能。
由于有了Web服务框架的帮助,对程序员来说,网络服务看起来就象是C#的本地对象。
程序员们能够利用他们已有的面向对象的知识与技巧开发Web服务。
仅需要使用简单的C#语言结构,C#组件将能够方便地为Web服务,并允许它们通过Internet被运行在任何操作系统上的任何语言所调用。
举个例子,XML已经成为网络中数据结构传递的标准,为了提高效率,C#允许直接将XML数据映射成为结构。
这样就可以有效的处理各种数据。
(四)完整的安全性与错误处理
语言的安全性与错误处理能力,是衡量一种语言是否优秀的重要依据。
任何人都会犯错误,即使是最熟练的程序员也不例外:
忘记变量的初始化,对不属于自己管理范围的内存空间进行修改。
这些错误常常产生难以预见的后果。
一旦这样的软件被投入使用,寻找与改正这些简单错误的代价将会是让人无法承受的。
C#的先进设计思想可以消除软件开发中的许多常见错误,并提供了包括类型安全在内的完整的安全性能。
为了减少开发中的错误,C#会帮助开发者通过更少的代码完成相同的功能,这不但减轻了编程人员的工作量,同时更有效地避免了错误的发生。
(五)版本处理技术
C#提供内置的版本支持来减少开发费用,使用C#将会使开发人员更加轻易地开发和维护各种商业用户。
升级软件系统中的组件(模块)是一件容易产生错误的工作。
在代码修改过程中可能对现存的软件产生影响,很有可能导致程序的崩溃。
为了帮助开发人员处理这些问题,C#在语言中内置了版本控制功能。
(六)灵活性和兼容性
在简化语法的同时,C#并没有失去灵活性。
尽管它不是一种无限制语言,比如:
它不能用来开发硬件驱动程序,在默认的状态下没有指针等等,但是,在学习过程中你将发现,它仍然是那样的灵巧。
2.C#语言编程环境
C#(读作Csharp)是微软开发的一种面向对象的编程语言,是微软.NET开发环境的重要组成部分。
而MicrosoftVisualC#2005是微软开发的C#编程集成开发环境(同种产品还有Borland公司的C#Builder),它是为生成在.NETFramework上运行的多种应用程序而设计的。
C#简单、功能强大、类型安全,而且是面向对象的。
C#凭借它的许多创新,在保持C样式语言的表示形式和优美的同时,实现了应用程序的快速开发。
VisualS包含VisualC#,这是通过功能齐全的代码编辑器、项目模板、设计器、代码向导、功能强大且易于使用的调试器以及其他工具实现的。
通过.NETFramework类库,可以访问多种操作系统服务和其他有用的精心设计的类,这些类可显著加快开发周期。
2.5系统流程的实现
1.后台管理流程图
图2-2后台管理流程图
2.前台实现流程图
图2-3前台实现流程图
第3章总体设计
3.1项目规划
QQ聊天室是前台和后台共用一个小网站,主要是为了在一些网站做补充,为了使我网站更有吸引力,增加网站的内容主要内容如下所示:
(1)“会员的管理”用于维护(删除、查询)会员的基本信息。
主要是根据会员编号和名称进行管理。
(2)“管理员的管理”用于维护管理员的基本信息。
其内容包括管理员的(增加,删除,修改密码)及权限的设置。
(3)“公告信息”用于公告的(增加,删除,修改,查询)情况,便于更快的实行信息的公告,从而对聊天室的管理。
其内容主要是公告的内容详细设置。
(4)“聊天内容管理”用于管理聊天内容的信息。
主要是为了健康的上网,对一些内容的删除。
3.2使用操作描述
方便性:
只要有个IE浏览器就可以使用,避免繁琐的安装。
快捷性:
管理方便,网站只要加入本功能,就能使用,占用系统少。
3.3数据库设计
3.3.1数据库字典
数据库是系统的最底层,它存储系统的所有数据。
根据对系统的分析,得出数据库表如下:
1.聊天信息表(Chat)
聊天信息表用于保存管理相应会员的聊天内空,时间,其中包括格式、密码、性别以及年龄。
管理人员信息表的字段说明如表3-1所示。
作用
聊天信息表
序号
英文字段名称
中文字段名称
字段类型
大小
备注
1
UserID
管理员ID
nvarchar
50
主键非空
2
UserName
管理员名称
Nvarchar
50
Notnull
3
CreateTime
时间
nvarchar
50
Datatime
4
Context
内容
text
2
Notnull
5
Color
颜色
Nvarchar
50
6
Emotime
表情
Nvarchar
50
Notnull
表3-1表Chat的
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 动态 服务 网页 网络 交流 系统