软件工程毕业设计(论文)ASP.NET手机论坛的设计与实现

上传人:沈*** 文档编号:80445680 上传时间:2022-04-25 格式:DOC 页数:36 大小:1.52MB
返回 下载 相关 举报
软件工程毕业设计(论文)ASP.NET手机论坛的设计与实现_第1页
第1页 / 共36页
软件工程毕业设计(论文)ASP.NET手机论坛的设计与实现_第2页
第2页 / 共36页
软件工程毕业设计(论文)ASP.NET手机论坛的设计与实现_第3页
第3页 / 共36页
点击查看更多>>
资源描述
JIANGXI NORMAL UNIVERSITY学 士 学 位 论 文THESIS OF BACHELOR(2006 2010年)手机论坛的设计与实现Design and Implementation of Mobile Forum姓 名: 学 号: 学 院: 软件学院 专 业: 软件工程 完成时间:2009年3月 指导老师: 声明声明本人郑重声明:所呈交的毕业设计(论文)是本人在指导教师指导下进行的研究工作及取得的研究成果。其中除加以标注和致谢的地方,以及法律规定允许的之外,不包含其他人已经发表或撰写完成并以某种方式公开过的研究成果,也不包含为获得其他教育机构的学位或证书而作的材料。其他同志对本研究所做的任何贡献均已在文中作了明确的说明并表示谢意。本毕业设计(论文)成果是本人在江西师范大学读书期间在指导教师指导下取得的,成果归江西师范大学所有。特此声明。声明人(毕业设计(论文)作者)学号:声明人(毕业设计(论文)作者)签名:签名日期:年 月 日摘要摘 要随着网络的发展,应用互联网来实现信息讨论,已经成为一种常用的手段。而伴随着通信技术的发展,手机也渐渐成为人们生活的必需品,因此我们开发了 一个手机论坛,通过该论坛人们可以就手机的相关问题进行交流和探讨。手机论坛使用Microsoft Visual Studio 2005作为开发工具,以SQL Server 2005为数据库平台,根据面向对象开发原理,采用了基于B/S结构的开发模式系统来开发。其中主要运用了ASP.NET技术,ADO.NET技术等。本系统包括用户注册模块、帖子管理模块、版主管理模块、版块管理模块, 用户管理模块等模块。本文讨论的是手机论坛系统的设计与实现过程,通过对论坛系统开发过程的详细描述,重点阐述了开发一个基于WEB的通用BBS网站系统所用到的技术和方法。本文首先介绍了系统的背景和相关技术,然后描述了系统各模块的分析与设计过程,并就系统中的主要功能的实现进行了详细的阐述,最后进行了总结及进一步的展望。关键词:Microsoft Visual Studio;B/S结构;论坛;ASP.NET技术IAbstractAbstractWith the development, application of the Internet to discuss the implementation of information has become a popular means. And with the development of communication technology, mobile phones have gradually become a necessity of life, so we developed a cell phone forum, through the Forum on the phone people can communicate and discuss relevant issues. Mobile Forum using Microsoft Visual Studio 2005 as development tools to SQL Server 2005 as the database platform, object-oriented development under the principle method based on B/S structure, the development of model systems to develop. Mainly use the ASP.NET technology, ADO.NET technologies. The system includes user registration module, post management module, management module Moderator, Forum management module, user management module and other modules. This article discusses the cell phone forum for system design and implementation, through the Forum, a detailed description of the system development process, focuses on the development of a web-based WEB BBS systems common techniques and methods used. This paper describes the background and related technology systems, then describes the system analysis and design of each module the process, and the main functions of the system implementation of a detailed exposition, and finally a summary and further prospects.Key Words:Microsoft Visual Studio;B/S structure,;forum;ASP.NET technologyII目录目录第1章 绪论11.1 课题开发背景11.2 手机论坛系统的概述11.3 本文所做的工作21.4本章小结2第2章 系统开发平台及相关技术分析32.1 ASP.NET相关知识32.2 SQL 技术简介42.3 ADO.NET技术简介52.4 本章小结6第3章 系统的需求分析73.1 项目概述73.2 项目的可行性分析73.3 项目制作目标73.4 系统功能概述83.5 系统用例分析93.6 非功能需求113.7 系统数据库设计113.8 本章小结17第4章 系统功能实现184.1 系统开发平台及工具184.2 用户注册的实现184.3 用户登录的实现204.4 用户发帖的实现214.5 用户回复的实现234.6 添加版块的实现244.7 添加版主的实现254.8 本章小结27第5章 总结与展望285.1 系统总结285.2 个人总结285.3 工作总结28参考文献29致 谢30IV绪论第1章 绪论1.1 课题开发背景在Internet飞速发展的今天,互联网成为人们快速获取、发布和传递信息的重要渠道,它在人们政治、经济、生活等各个方面发挥着重要的作用。计算机将具备更多的智能成分,它将具有多种感知能力、一定的思考与判断能力及一定的自然语言能力。通过Internet与世界各地的其它用户自由地进行通信,可从Internet中获得各种信息。让人能产生身临其境感觉的各种交互设备已经出现,虚拟现实技术是这一领域发展的集中体现。Internet大大缩小了时空界限,通过网络人们可以共享计算机硬件资源、软件资源和信息资源。“网络就是计算机”的概念被事实一再证明。BBS是电子公告板系统(Bulletin Board System)的英文缩写,它通过在计算机上运行服务软件,执行下载数据或程序、上传数据、阅读新闻、与其它用户交换消息等功能。BBS是Internet是最知名的服务之一,开辟了一块“公共”空间供用户读取和讨论其中信息。通过对论坛系统的分析和了解,得知当前论坛系统采用了B/S模式,但是系统的视图和控制不分离,对数据库的操作代码和页面显示代码在一个页面,容易导致系统运行时不稳定,并且使得系统后期维护和升级困难,提高了产品的总成本。因此基于B/S体系架构创建手机论坛,紧跟行业发展,满足人们生活、学习的需要。1.2 手机论坛系统的概述本手机论坛系统提供多人实时交谈、信息咨询服务,公布最新消息。BBS站点各个版块涉及的主题和专业范围各有侧重,用户可根据自己的需要选择服务版块,参与讨论,发表意见,征询建议,结识朋友。本手机论坛系统的设计实现的主要功能有:用户可以自己浏览感兴趣的版块内的信息;用户可在论坛中发布文章;用户还可以在论坛中对其他人的文章表达自己的看法。1.3 本文所做的工作本论文简要介绍了开发平台的一些相关技术,主要阐述了对手机论坛系统的功能实现和一些核心技术。论文的系统组织结构如下:第1章 简述了系统开发目的、背景、分析目前的现状和意义以及所做的主要工作及组织结构安排。第2章 对开发该系统所用的技术以及相关知识的介绍。第3章 详细描述了系统的需求分析和总体的设计。第4章 详细阐述了系统具体功能的设计与实现。第5章 作为全文的总结,说明了在撰写论文过程中的心得和体会,并总结系统开发过程中的经验以及教训,展望未来的应用前景。1.4 本章小结本章主要介绍了课题研究的目的和背景,分析了目前论坛目前的现状,以及开发论坛的必要性,最后说明了主要工作及全文的组织结构安排。2系统开发平台及相关技术分析第2章 系统开发平台及相关技术分析确定手机论坛系统的开发前景、意义、目标之后,接下来就是选择好开发工具以及运用相关的技术来开发本系统。在网站模式架构上,我们选择B/S架构的操作模式,这样可以方便用户的查看和管理员的管理,使得用户无须安装客户端软件,只要打开浏览器即可登录手机论坛进行访问。2.1 ASP.NET相关知识ASP 是一项微软公司的技术,是一种使嵌入网页中的脚本可由因特网服务器执行的服务器端脚本技术。 指 Active Server Pages(动态服务器页面) ,运行于 IIS 之中的程序。而ASP.NET不仅仅是 ASP 的下一个版本,而且是一种建立在通用语言上的程序构架,能被用于一台Web服务器来建立强大的Web应用程序。ASP.NET提供许多比现在的Web开发模式强大的的优势。下面就来介绍ASP.NET的优点。2.1.1 ASP.NET的优点1. 执行效率的大幅提高:ASP.NET是把基于通用语言的程序在服务器上运行。不像以前的ASP即时解释程序,而是将程序在服务器端首次运行时进行编译,这样的执行效果,当然比一条一条的解释强很多。 2. 世界级的工具支持:ASP.NET构架是可以用Microsoft(R)公司最新的产品 Visual S开发环境进行开发,WYSIWYG(What You See Is What You Get所见即为所得)的编辑。这些仅是ASP.NET强大化软件支持的一小部分。 3. 强大性和适应性:因为ASP.NET是基于通用语言的编译运行的程序,所以它的强大性和适应性,可以使它运行在Web应用软件开发者的几乎全部的平台上。通用语言的基本库,消息机制,数据接口的处理都能无缝的整合到ASP.NET的Web应用中。ASP.NET同时也是language-independent语言独立化的。所以,你可以选择一种最适合你的语言来编写你的程序,或者把你的程序用很多种语言来写,现在已经支持的有C#,VB,Jscript。将来,这样的多种程序语言协同工作的能力保护您现在的基于COM+开发的程序,能够完整的移植向ASP.NET。 4. 简单性和易学性:ASP.NET是运行一些很平常的任务如表单的提交客户端的身份验证、分布系统和网站配置变得非常简单。例如ASP.NET页面构架允许你建立你自己的用户分界面,使其不同于常见的VB-Like界面。另外,通用语言简化开发使把代码结合成软件简单的就像装配电脑。 5. 高效可管理性:ASP.NET使用一种字符基础的,分级的配置系统,使你服务器环境和应用程序的设置更加简单。因为配置信息都保存在简单文本中,新的设置有可能都不需要启动本地的管理员工具就可以实现。这种被称为Zero Local Administration的哲学观念使ASP.NET的基于应用的开发更加具体,和快捷。一个ASP.NET的应用程序在一台服务器系统的安装只需要简单的拷贝一些必须得文件,不需要系统的重新启动,一切就是这么简单。 6. 多处理器环境的可靠性:ASP.NET已经被刻意设计成为一种可以用于多处理器的开发工具,它在多处理器的环境下用特殊的无缝连接技术,将很大的提高运行速度。即使你现在的ASP.NET应用软件是为一个处理器开发的,将来多处理器运行时不需要任何改变都能提高他们的效能。 7. 自定义性和可扩展性:ASP.NET设计时考虑了让网站开发人员可以在自己的代码中自己定义plug-in的模块。这与原来的包含关系不同,ASP.NET可以加入自己定义的如何组件。网站程序的开发从来没有这么简单过。 8. 安全性:基于Windows认证技术和应用程序配置,你可以确定你的原程序是绝对安全的。1232.2 SQL 技术简介SQL(Structured Query Language)结构化查询语言,是一种数据库查询和程序设计语言,用于存取数据以及查询、更新和管理关系数据库系统。同时也是数据库脚本文件的扩展名。它允许用户在高层数据结构上工作。它不要求用户指定对数据的存放方法,也不需要用户了解具体的数据存放方式,所以具有完全不同底层结构的不同数据库系统可以使用相同的SQL语言作为数据输入与管理的接口。它以记录集合作为操作对象,所有SQL语句接受集合作为输入,返回集合作为输出,这种集合特性允许一条SQL语句的输出作为另一条SQL语句的输入,所以SQL语句可以嵌套,这使他具有极大的灵活性和强大的功能,在多数情况下,在其他语言中需要一大段程序实现的功能只需要一个SQL语句就可以达到目的,这也意味着用SQL语言可以写出非常复杂的语句。如今无论是像Oracle、Sybase、Informix、SQL Server这些大型的数据库管理系统,还是像Visual Foxpro、PowerBuilder这些PC上常用的数据库开发系统,都支持SQL语言作为查询语言。SQL功能很多,完全可以为我们的编程工作提供强有力的帮助。例如,SQL面向数据库执行查询;SQL可从数据库取回数据;SQL可在数据库中插入新的记录;SQL可更新数据库中的数据;SQL可从数据库删除记录;SQL可创建新数据库;SQL可在数据库中创建新表;SQL可在数据库中创建存储过程;SQL可在数据库中创建视图;SQL可以设置表、存储过程和视图的权限。42.3 ADO.NET技术简介 ADO.NET的名称起源于ADO(ActiveX Data Objects),这是一个广泛的类组,用于在以往的Microsoft技术中访问数据.之所以使用ADO.NET名称,是因为Microsoft希望表明,这是在.NET编程环境中优先使用的数据访问接口。ADO.NET是一组用于和数据源进行交互的面向对象类库。通常情况下,数据源是数据库,但它同样也能够是文本文件、Excel表格或者XML文件。ADO.NET允许和不同类型的数据源以及数据库进行交互。然而并没有与此相关的一系列类来完成这样的工作。因为不同的数据源采用不同的协议,所以对于不同的数据源必须采用相应的协议。一些老式的数据源使用ODBC协议,许多新的数据源使用OleDb协议,并且现在还不断出现更多的数据源,这些数据源都可以通过.NET的ADO.NET类库来进行连接。ADO.NET提供与数据源进行交互的相关的公共方法,但是对于不同的数据源采用一组不同的类库。这些类库称为Data Providers,并且通常是以与之交互的协议和数据源的类型来命名的。2.3.1 ADO.NET的对象 1.SqlConnection 对象:和数据库交互,你必须连接它。连接帮助指明数据库服务器、数据库名字、用户名、密码,和连接数据库所需要的其它参数。connection对象会被command对象使用,这样就能够知道是在哪个数据库上面执行命令。与数据库交互的过程意味着你必须指明想要发生的操作。这是依靠command对象执行的。你使用command对象来发送SQL语句给数据库。command对象使用connection对象来指出与哪个数据库进行连接。你能够单独使用command对象来直接执行命令,或者将一个command对象的引用传递给SqlDataAdapter,它保存了一组能够操作下面描述的一组数据的命令。2. SqlDataReader对象:许多数据操作要求你只是读取一串数据。data reader对象允许你获得从command对象的SELECT语句得到的结果。考虑性能的因素,从data reader返回的数据都是快速的且只是“向前”的数据流。这意味着你只能按照一定的顺序从数据流中取出数据。这对于速度来说是有好处的,但是如果你需要操作数据,更好的办法是使用Dataset。3. DataSet对象:Dataset对象是数据在内存中的表示形式。它包括多个DataTable对象,而DataTable包含列和行,就象一个普通的数据库中的表。你甚至能够定义表之间的关系来创建主从关系(parent-child relationships)。DataSet是在特定的场景下使用帮助管理内存中的数据并支持对数据的断开操作的。DataSet是被所有Data Providers使用的对象,因此它并不像Data Provider一样需要特别的前缀。4. SqlDataAdapter对象:某些时候你使用的数据主要是只读的,并且你很少需要将其改变至底层的数据源。同样一些情况要求在内存中缓存数据,以此来减少并不改变的数据被数据库调用的次数。Data adapter通过断开模型来帮助你方便的完成对以上情况的处理。当在一单批次的对数据库的读写操作的持续的改变返回至数据库的时候,Data adapter 填充(fill)DataSet对象。data adapter包含对连接对象以及当对数据库进行读取或者写入的时候自动的打开或者关闭连接的引用。另外,data adapter包含对数据的SELECT,INSERT,UPDATE和DELETE操作的command对象引用。你将为DataSet中的每一个table都定义data adapter,它将为你照顾所有与数据库的连接。所有你将做的工作是告诉data adapter什么时候装载或者写入到数据库。52.4 本章小结本章主要介绍了系统开发工具以及相关技术进行概述,主要针对ASP.NET、SQL数据库以及ADO.NET技术进行了分析,Web应用系统常用的开发技术主要分为两大阵营,一个是基于Java技术的J2EE标准,另一种就是微软的.NET平台。严格的讲,两种技术各有所长,本质上是相似的,只是具体实现的技术不同。一般来说,J2EE经过多年实践,技术成熟,性能优异。.NET出现较晚,对一些新的技术支持较好,并且具有适合快速开发的特点。由于对ASP.NET较熟练,所以本系统采用的是ASP.NET。6系统的需求分析第3章 系统的需求分析3.1 项目概述手机论坛系统软件针对用户与管理员操作的各个环节,建立了用户发帖、用户回帖、用户管理、版主管理、板块管理等模块。我对手机论坛的整个流程进行了功能分类与实现,使得广大用户很方便快捷的访问系统。3.2 项目的可行性分析可行性分析(Feasibility Analysis)也称为可行性研究,是指在允许的成本、性能要求下,分析每项需求实施的可行性,提出需求实现的相关风险,包括与其它需求的冲突,对外界因素的依赖和技术障碍。下面重点对手机论坛系统Web版的技术和操作可行性进行分析。1.操作可行性:鉴于Web系统的特点,采用ASP.NET增加用户界面的友好性,可以使系统操作员很好的掌握使用方法。在开发过程中,我们还尽量给操作员以方便,这样就大大提高工作效率。而且该系统简单易操作,易维护,减少了不必要的麻烦。2.技术可行性:从目前比较流行的数据库开发、管理软件来看,该系统的数据可能比较大,在大二曾学过SQL Server 数据库,对其比较了解和熟悉,所以考虑使用SQL Server2005作为后台数据存储管理。本人在工作室学习方向是.NET,,工作室就用该技术开发了过类似网站,因此,本系统采用ASP.NET没有任何技术问题。综上所述,此系统开发目标已明确,在技术和经济等各方面都不存在什么问题,因此系统的开发是完全可行的。3.3 项目制作目标手机论坛系统的建立,需要进行用户需求调查与分析,以确定系统目标,提出解决问题的详细方案,这是系统建设的重要环节。要想使用户能够有效的使用,功能上对系统的要求是全面的。在系统运行的软硬件方面,软件要求易用,界面友好,容易掌握,可以很简单方便的访问。本系统设计达到的目标:(1) 界面友好、操作简单、信息查询灵活、方便、快捷、准确。(2) 系统最大限度地实现了易安装性、易维护性和易操作性。(3) 系统运行稳定、安全可靠。3.4 系统功能概述本课题设计在充分进行用户需求分析的基础上把系统划分为用户的自行操作和后台管理两个大模块。用户的自行操作包括登陆系统,修改个人信息。后台管理包括版块管理,用户管理,版主管理,帖子管理。这些个模块之间,紧密结合,共享信息资源,形成一种较好的手机论坛系统的解决方案。系统功能结构图如图3.1所示:图3.1 系统功能结构图登陆系统模块: 注册新用户:输入一系列信息,用以注册账号。 登陆系统:用户输入自己的用户名,密码来登陆论坛。 找回密码:通过求助于管理员找回自己的密码。修改个人信息: 修改密码:设置自己的新密码。 修改个性签名:设置自己的个性签名。 修改头像:修改自己的头像。版块管理 版块信息添加:把版块信息添加到系统。 版块信息修改:根据实际情况,进行实时修改。 版块信息删除:根据情况,删除相关版块。用户管理 用户信息添加:把用户信息添加到系统。 用户信息删除:根据情况,删除相关用户。 用户权限设置:赋予用户权限。版主管理 版主信息添加:把版主信息添加到系统。 版主信息删除:根据情况,删除相关版主。帖子管理 修改帖子:修改帖子内容。 删除帖子:删除违规帖子。3.5 系统用例分析构造系统用例分析图,首先需要界定系统的参与者。所谓的参与者是指所有存在于系统外部并与系统进行交互的人或其他系统。在系统的实际运作中,一个实际用户可能对应于系统的多个参与者,不同的用户也可以只对应于一个参与者,从而代表同一参与者的不同实例,每个参与者可以参加一个或多个用例。前台用户用例图:(1) 用户登陆用例:可以在登陆窗口输入用户信息资料进行登陆。(2) 用户浏览版块用例:用户浏览各种,进入想要查看的版块浏览信息。(3) 用户修改个人信息用例:用户登陆帐户后,可以对个人信息进行修改。(4) 用户发表帖子用例:用户可以在论坛中发表自己的帖子。 (5) 用户回复帖子用例:用户查看帖子,并回复。前台用户用例图,如图3.2所示:图3.2 前台用户用例图后台管理员用例:(1) 管理员登陆用例:管理员登陆自己的管理员帐户信息资料,进入管理页面。(2) 管理用户用例:管理员可以添加新用户,并可修改现有的用户的权限或者删除用户。(3)管理版主用例:管理员可以添加,删除版主。(4)管理帖子用例:管理员可以对帖子进行一切操作。(5)管理版块用例:管理员可以添加,删除版块。(6)个人信息管理用例:可以对自己的信息进行修改。 后台管理员用例图,如图3.3所示:图3.3 后台管理员用例图3.6 非功能需求随着软件项目的规模不断加大,非功能需求这个以前并不被人所熟知的词语渐渐活跃在人们的视野中,非功能需求是指系统除了满足功能需求以外的必要的和自身的某种特性。我认为在系统中,非功能需求应该包括可维护性,可移植性,安全性和稳定并迅捷性。概括如下:1、系统的可维护性软件的可维护性是软件质量的一个重要衡量标准。作者对软件的可维护性设计进行了分析研究,将其用于正在承担的项目,在软件开发的各个阶段就把软件的维护性考虑进去。从而可以提高软件的适应性、灵活性,减少软件的未来维护工作量。2、系统的可移植性系统的可移植性指系统对技术和业务需求变化的支持能力,能保证可持续增长以满足用户需求和业务复杂性要求。对于系统来说,可移植性是非常重要的。设计系统,应该可以通过适当的调整而适应类似不同工作的需要,并且为以后的系统升级留有空间。以便于在未来工作的发展需要的时候,可以比较方便地进行再次开发、扩充升级以改善或增加系统的功能。另外,系统的可移植性也指在一台电脑研究编写出来的系统能够在其他服务器和电脑上正常运行。3、系统的安全性。在众多的非功能寻求中,安全性无疑是重要的一个,一个系统是否能够通过为信息的机密性,完整性和可靠性提供充分的保护来预防风险,保障系统安全,将会是衡量系统是否成功的基本要素。保护数据库,防止恶意攻击的能力的强弱也是衡量系统安全的指标。4、系统的稳定并迅捷性。系统稳定并迅捷是衡量系统质量优劣的另一个重要指标。系统迅捷性用响应时间或吞吐量来衡量。响应时间是对请求做出响应所需要的时间,系统吞吐量是指特定时间内能够处理的请求数量。稳定性要求运行稳定,并具有一定的容错功能,局部功能出现故障时候,不会影响其他功能,对用户的错误操作,有适当的提示。63.7 系统数据库设计 为了使用户的数据要求清楚、准确地描述出来,通常需要建立一个概念性的数据模型。概念数据模型是一种面向问题的数据模型,是按照用户的观点对数据建立的模型。它描述了从用户的角度看到的数据,反映了用户的现实环境,而且与在软件系统中的实现无关,经过对数据的各种分析得出了该系统的数据库类图。在本系统中的不同功能模块中,涉及到的数据多种多样,作用各不相同,同时又互相联系。系统的许多功能都要涉及到数据库中的不同的表,而数据库中的表的设计和表之间关系的设计,是数据库设计的重点。通过对功能的需求分析,我们可以按照用途将数据库中的表进行分类。将数据库表分类有利于对系统数据进行组织与存储,有利于理清表间的关系,更有利于数据库的管理维护。以下是相关数据的E-R图:789用户信息E-R图,如图3.4所示:图3.4 用户信息E-R图管理员E-R图,如图3.5所示:图3.5 管理员E-R图论坛主题信息E-R图:如图3.6所示:图3.6 论坛主题信息E-R图版主信息E-R图:如图3.7所示:图3.7 版主信息E-R图头像信息E-R图:如图3.8所示:图3.8 头像信息E-R图版块信息E-R图:如图3.9所示: 图3.9 版块信息E-R图回复帖子信息E-R图:如图3.10所示: 图3.10 回复帖子信息E-R图根据以上的E_R图,我进行了相应的数据库逻辑结构设计,相关表的具体字段信息如下:用户表见表3.1:表3.1用户表 列名数据类型最大长度允许为空用户名nvarchar50F用户密码nvarchar50F真实姓名nvarchar50Y性别varchar10Y出生日期Datetime8Y联系电话nvarchar50YQQ号Int20Y头像nvarchar50YEmailnvarchar50Y家庭住址nvarchar100Y个人首页 nvarchar50Y用户权限nchar10Y管理员表见表3.2:表3.2管理员表列名数据类型最大长度允许为空管理员姓名nvarchar50F管理员密码nvarchar50F管理有权限nchar10F论坛主题信息表见表3.3:表3.3论坛主题信息表列名数据类型最大长度允许为空帖子编号nvarchar50F帖子名称nvarchar50F版块编号nvarchar50F帖子内容nvarchar4000F发表时间Datatime8F发帖人nvarchar50F版主表见表3.4:表3.4版主表列名数据类型最大长度允许为空版主名nvarchar50F密码nvarchar50F版块编号nvarchar50F真实姓名nvarchar50Y性别varchar50Y出生日期Datetime8Y联系电话nvarchar20YQQ号Int20Y头像nvarchar50YEmailnvarchar50Y家庭住址nvarchar100Y个人首页 nvarchar50Y版主权限nchar10Y头像表见表3.5:表3.5头像表列名数据类型最大长度允许为空编号nvarchar20F头像nvarchar200Y版块表见表3.6:表3.6版块表列名数据类型最大长度允许为空版块编号nvarchar50F版块名称nvarchar50F回复表见表3.7表:表3.7回复表列名数据类型最大长度允许为空回帖编号 nvarchar20F回帖主题 nvarchar50F帖子编号 nvarchar50F回帖内容 nvarchar4000F回帖时间 Datetime8F回帖人 nvarchar50F3.8 本章小结本章主要对手机论坛系统需求分析进行阐述,软件项目的需求分析是软件项目开发的基础,需求分析直接影响着软件项目产品的质量,有效的需求分析是软件开发项目中关键的成功因素。软件系统的需求一般可以分为功能性需求和非功能性需求。软件项目开发的最终目标在于满足系统的功能性需求和非功能性需求。功能性需求是系统需要实现的,提供给用户使用的具体的功能。非功能性需求是为了满足用户对系统功能的需求,系统正常工作所应当具备的系统的特定特性,如性能、安全性、可用性、可扩展性等等,功能性需求决定着非功能性需求,非功能需求又影响着功能需求。软件项目的需求分析是在项目开发的第一个周期内开始进行的,需求的好坏关系到系统以后能否正常运行,因此需求分析阶段必须做好详细的需求调研工作。17系统功能实现第4章 系统功能实现4.1 系统开发平台及工具1、服务器端:操作系统:Windows XPWeb服务器:IIS 数据库:SQL Server 20052、客户端:操作系统:Windows XP浏览器:Internet Explorer3、主要开发工具:Dreamweaver 8+VS20054、主要开发语言:ASP.NET+JAVAScript4.2 用户注册的实现用户要在该网站上发言回复信息,首先必须登录账户,如果用户还没有注册必须先注册。首先进入网站首页,点击首页的“注册”,即可进入注册页面。用户输入自己的个人信息进行注册,系统判断用户输入的信息,如果用户输入的数据正确无误后,即录入数据,数据保存在数据库,页面将提示注册用户成功。 下面是注册主函数,先设置待注册的用户信息,然后使用插入语句将数据插入数据库,代码如下:protected void btnReg_Click(object sender, EventArgs e) if (txtName.Text = string.Empty) Response.Write(alert(用户名不能为空!); else usermanage.UserName = txtName.Text; DataSet ds = usermanage.FindUserByName(usermanage, tb_User); if (ds.Tables0.Rows.Count 0) Response.Write(alert(该用户已经存在!); txtName.Text = string.Empty; txtName.Focus(); else usermanage.UserPwd = txtPwd.Text; usermanage.TName = txtTName.Text; if (ddlSex.SelectedIndex = 0) usermanage.Sex = true; if (ddlSex.SelectedIndex = 1) usermanage.Sex = false; usermanage.Birthday = DateTime.Parse(txtBirthday.Text); usermanage.Tel = txtTel.Text; usermanage.Mobile = txtMobile.Text; usermanage.QQ = Int32.Parse(txtQQ.Text); imagemanage.PhotoID=ddlPhoto.SelectedValue; usermanage.Photo=imagemanage.FindPhotoByID(imagemanage, tb_Image).Tables0.Rows01.ToString(); usermanage.Email = txtEmail.Text; usermanage.FAddress = txtHAddress.Text; usermanage.RAddress = txtRAddress.Text; usermanage.Index = txtIndex.Text; usermanage.AddUser(usermanage); Response.Write(alert(用户注册成功!); txtName.Text = txtPwd.Text = txtSPwd.Text = txtTName.Text = txtBirthday.Text = txtTel.Text = txtMobile.Text = txtQQ.Text = txtEmail.Text = txtHAddress.Text = txtRAddress.Text = txtIndex.Text = string.Empty; 注册模块我们会对用户必须填入的信息进行验证,如果不符合会给出各种提示,注册界面图如图4.1所示:图4.1 注册界面图4.3 用户登录的实现已注册用户在可以登录窗口输入注册的账户名和密码,输入完成后点击登陆,系统判断用户输入的数据,如果用户名,验证码或者密码不正确,则系统提示用户用户名,验证码或密码错误,登录失败,如果用户名密码和验证码都正确则提示登录成功。10111213部分实现代码如下:protected void btnLogin_Click(object sender, EventArgs e) if (txtName.Text = string.Empty) Response.Write(alert(登录名不能为空!); return; else if (Request.QueryStringid = 0) SessionID = 0; DataSet ds = null; usermanage.UserName = txtName.Text; usermanage.UserPwd = txtPwd.Text; ds = usermanage.Login(usermanage); if (ds.Tables0.Rows.Count 0 & txtCode.Text = Request.CookiesCheckCode.Value) SessionName = txtName.Text; SessionPop = 用户; Response.Redirect(./Default.aspx); else Response.Write(alert(用户名称或密码不正确!); 用户登录图,如图4.2所示:图4.2 用户登录图4.4 用户发帖的实现用户登陆系统,可以浏览论坛的各种版块,查看各种帖子的详细信息。当自己到想要在论坛里面发布帖子时,点击发表帖子,然后系统会检查用户登陆状态,如果未登陆,系统会提示用户登陆。如果已经登陆则跳转到发表帖子页面,用户填写好信息后,点击提交,则发表帖子完成。14部分实现代码如下:protected void btnSubmit_Click(object sender, EventArgs e) string strName = ; string strPop = ; if (txtCName.Text = string.Empty) Response.Write(alert(帖子名称不能为空!); return; if (SessionName = null) strName = 匿名; strPop = 游客; else strName = SessionName.ToString(); strPop = SessionPop.ToString(); cardmanage.CardID = cardmanage.GetCID(); cardmanage.CardName = txtCName.Text; modulemanage.ModuleName = ddlMName.SelectedValue; cardmanage.ModuleID=modulemanage.FindModuleByName(modulemanage, tb_Module).Tables0.Rows00.ToString(); cardmanage.CardContent = FreeTextBox1.Text; cardmanage.CardTime = DateTime.Now; cardmanage.CardPeople = strName; cardmanage.Pop = strPop; cardmanage.AddCard(cardmanage); Response.Write(alert(帖子发表成功!); txtCName.Text = FreeTextBox1.Text = string.Empty; 用户发表帖子界面,如图4.3所示:图4.3 用户发表帖子界面4.5 用户回复的实现用户登陆系统,就会浏览论坛的各种版块,查看各个帖子的详细信息。当看到某些文章时,便想发表自己的观点,这时用户可以点击回复,系统会跳转到回复帖子页面,用户填写好自己的回复内容后,点击提交,则回复帖子成功。15部分功能实现代码如下: if (txtName.Text = string.Empty) Response.Write(alert(回帖主题不能为空!); return; revertmanage.RevertID = revertmanage.GetRCID(); revertmanage.RevertName = txtName.Text; revertmanage.CardID = Page.Request.QueryStringCardID.ToString(); revertmanage.RevertContent = FreeTextBox1.Text; revertmanage.RevertTime = DateTime.Now; revertmanage.RevertPeople = SessionName.ToString(); revertmanage.Pop = SessionPop.ToString(); revertmanage.AddRevert(revertmanage); Response.Redirect(CardInfo.aspx?CardID= + Page.Request.QueryStringCardID.ToString() + ); 用户回复帖子界面,如图4.4所示:图4.4 用户回复帖子界面4.6 添加版块的实现往往在论坛成立之初,并不是都有能满足用户的要求的版块,而往往很多用户找不到自己帖子的相关版块,不能在相应的版块里讨论问题,这时候管理员可以根据用户的提议增加版块。管理员在确定用户的需求后,先确定版块名字,在这里需要验证下新版块名是否和原来版块重名,如果不重名就可以添加版块了。部分实现代码如下:protected void btnAdd_Click(object sender, EventArgs e) if (txtName.Text = string.Empty) Response.Write(alert(版块名称不能为空!); return; else modulemanage.ModuleName=txtName.Text;
展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档


copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!