为了正常的体验网站,请在浏览器设置里面开启Javascript功能!

大学生交流平台-毕业论文

2017-09-26 47页 doc 133KB 54阅读

用户头像

is_219945

暂无简介

举报
大学生交流平台-毕业论文大学生交流平台-毕业论文 前言 随着信息技术和计算机网络技术的飞速发展论坛在我国迅速成 长。并成为国民信息交流的主要手段之一。然而,由于我国许多论坛 缺乏必要的管理信息系统和整合集成方案,已经不能适应现在计算机 网络的发展,成为我国发展论坛的重要瓶颈之一。本次毕业设计尝试 从我国论坛管理的实际出发,构建了适用于中小型论坛的学习管理功 能 本系统采用基于WEB的.net技术,采用Visual Studio 2005为 开发工具,利用SQL Server 2000作为数据库服务器进行数据管理。 从总体架构,功能设计等方面对这...
大学生交流平台-毕业论文
大学生交流平台-#毕业# 前言 随着信息技术和计算机网络技术的飞速发展论坛在我国迅速成 长。并成为国民信息交流的主要手段之一。然而,由于我国许多论坛 缺乏必要的管理信息系统和整合集成,已经不能适应现在计算机 网络的发展,成为我国发展论坛的重要瓶颈之一。本次毕业尝试 从我国论坛管理的实际出发,构建了适用于中小型论坛的学习管理功 能 本系统采用基于WEB的.net技术,采用Visual Studio 2005为 开发工具,利用SQL Server 2000作为数据库服务器进行数据管理。 从总体架构,功能设计等方面对这一信息平台进行了详细阐述。提出 了基于B/S模式的论坛管理信息系统框架,该系统能向管理者提供做 好的管理、组织、查询功能。本系统有很强的实用性、开发效率高、 移植性好、稳定性好等优点。 关键词:大学生学习论坛;设计;实现; VS2005;SQL Server ;ASP.NET Abstract As information technology and computer network technology, the rapid development forum in China grew rapidly. National information exchange and become one of the main means. However, because many forums lack the necessary integration of management information systems and integrated solutions can 1 not meet the current development of computer networks, and has become an important forum for the development of one of the bottlenecks. The graduation project attempts to manage the reality of our forums to build a forum for learning management capabilities of small and medium The system is based on the WEB. net technology, using Visual Studio 2005 development tools, using SQL Server 2000 as the database server for data management. From the overall architecture, functional design and other aspects of this information platform in detail. Proposed based on B / S model forum management information system framework, the system can do a good job of management to the managers, organization, search functions. The system has a strong practical, the development of high efficiency, portability is good, good stability. Keywords: college students learning forums; design; to achieve; VS2005; SQL Server; ASP.NET 摘 要 本课题目的是结合实际制作出大学生学习论坛,大学生学习论坛 是对论坛的后台操作,现在的论坛是大家自由交流的平台,在论坛里 大家可以畅所欲言,但是为了维护互联网的网络环境安全建设,还有 2 防止有的文章违反互联网电子公告的相关规定,所以我们必须对有一 定影响力的论坛里言语进行审核管理。 意义在于对论坛进行舆情学习,整合互联网信息采集技术及信息 智能处理技术通过对互联网海量信息自动抓取、主题检测、专题聚焦, 实现用户的网络舆情监测和新闻专题追踪等信息需求,为客户全面掌 握群众思想动态,做出正确舆论引导,提供分析依据。而且一旦发生 危害国家和社会安全的舆情问题,如谣言、非法集资活动,利用大学 生学习论坛及时发现问题并预警,针对危机,第一时间内启动危机公 关预案,快速利用多种舆情疏导手段进行澄清,如官方网站、在主流 论坛发帖、新闻发布会等形式,与谣言赛跑,更早地告知民众真相, 而不是简单粗暴地封堵。 目录 大学生学习论坛毕业论文 ................. 错误~未定义书签。1 前言 ...................................................... 1 摘 要 ..................................................... 1 第一章 概述............................................... 5 1.1大学生学习论坛的必要性 ............................. 5 1.2大学生学习论坛的目标 ............................... 3 1.3 系统开发方法和开发平台 ............................ 3 3 1.4 课题研究方法 ...................................... 4 1.5本文研究的重点和难点参考文献 .......................... 5 第二章 开发背景........................................... 6 第三章 系统分析......................... 错误~未定义书签。5 3.1绘制业务流程图 ................... 错误~未定义书签。6 3.2用户需求分析 ...................................... 12 3.2.1应用程序结构确定 ............................. 12 3.2.2确定系统开发环境 ............................. 12 3.2.3确定系统的功能模块 ........................... 12 第四章 系统设计.......................................... 13 4.1总体设计 .......................................... 13 4.1.1系统目标设计 ................ 错误~未定义书签。7 4.2详细设计 .......................................... 13 4.2.1 系统功能模块设计 ........... 错误~未定义书签。8 4.2.2数据库设计 .................. 错误~未定义书签。8 4(3系统安全性设计 ................................... 14 4(4经济可行性分析 ................................... 14 4(5技术可行性分析 ................................... 14 第五章 系统实施.......................................... 23 5(1、开发工具简介 ................................... 26 5.1.1. .net和SQL 简介 ............................ 26 5(2 系统实现 ........................................ 20 4 5.2.1. 前台首页的实现 ............................. 22 5.2.2 后台管理登陆的实现 ......................... 23 5.2.3. 关键字管理 ................................. 25 5.2.4. 统计 ....................................... 25 5.2.5. 用户管理 ................................... 26 第六章 系统使用说明 ..................................... 27 第七章 致谢词............................................ 54 第八章 结束语............................................ 55 参考文献 ................................................. 55 第一章 概述 1.1大学生学习论坛的必要性 (一)计算机已经成为我们学习和工作的得力助手: 今天,计算机的价格已经十分低廉,性能却有了长足的进步。它 已经被应用于许多领域,计算机之所以如此流行的原因主要有以下几 个方面: 5 首先,计算机可以代替人工进行许多繁杂的劳动; 其次,计算机可以节省许多资源; 第三,计算机可以大大的提高人们的工作效率; 第四,计算机可以使敏感文档更加安全,等等。 (二)开发大学生学习系统的意义 现在不论是国内还是国外,人们都喜欢在论坛社区里讨论或查看自己喜欢的东西,随着论坛社区在人们生活中起到的作用越来越大,人们对论坛社区的重视程度也是越来越大。所以为了给大家创建一个安全、和谐的环境,国内外各大论坛社区对其社区的学习工作也是相当重视,开发符合自己要求的学习系统也是不可缺少的工作。 据国外媒体报道,无论是互联网,还是营销及传媒,其火爆程度均不如论坛社交网络。据IDC预计,到2012年企业社交网络产品规模将达到20亿美元。如果企业在社交网络市场没有任何表现,那么这家企业已经落后了。所以对社区和社区学习系统的发展也是成上升趋势的。 。 1.2 大学生学习论坛的目标 1.2.1帖子管理 帖子管理分为两类一类是先审后发(就是帖子需要审核后才能出现),一个是先发后审(帖子先出现在论坛在进行审核)。两种分辨的依据可以根据关键字进行判断,含有关键字的就分到先审后发里,无关键 6 字的分到先发后审里 1.2..2 黑名单管理 能够把非法用户添加到黑名单,并且添加加入黑名单的原因 1.2.3关键字管理 关键字的添加是判断帖子性质的依据,判断帖子是先审还是先发。1 1.2.4用户管理 用户管理是查看用户信息,或着帮助用户修改密码。 1.2.5图片审核 图片审核时对论坛里所有图片进行单独审核,最好是点图片审核后能弹出一个单独的网页对图片进行审核 1.2.6统计 统计就是对论坛的帖子点击量进行的统计,点击后能呈现出一个排名 1.2.7修改密码 1.2.8退出系统 7 1.3 系统开发方法和开发平台 本系统采用的开发工具是VS2005,软件体系结构主要采用三层或多层C/S及B/S结构,开发方面逐渐由结构化开发方法转向面向对象及基于组件和模型的开发方法。 数据库技术目前还是关系型数据库占主流地位,但逐渐与面向对象技术和网络环境相结合。数据库管理系统主要有桌面型如VFP、中小型的及大型的等,目前逐渐由低端向高端发展,新开发的大量系统采用MS SQL SERVER和ORACLE等适合于大中型企业级开发的DBMS。 与面向对象技术相结合,大量地使用UML即统一建模语言,UML的最重要的目的是提供一套综合的表示法系统,用以表达系统的需求、体系结构、实现、部署和状态;它从面向对象的观点来交流这些方面,其中所有事物都用对象的概念来描述:对象采取的行为、对象之间的关系、对象的部署以及对象为了响应外部事件而改变状态的方式。 但UML并不是一种开发方法,还必须结合使用一定的开发过程,如瀑布模型、螺旋过程、统一过程(RUP)、极限编程、 MSF模型、Martin L.Shoemaker著,高猛等译的《UML实战教程—面向.NET开发人员》中介绍的UML五步法等,其中RUP是重量级的,而UML五步法是一个轻量级的、以模型为中心的开发过程,适合不特别复杂的系统,且可操作性好。 可以使用一些工具来使用UML,如Microsoft公司的Visio及IBM公司的IBM Rational Rose和IBM Rational XDE等,其中Visio与其他大多数企业建模工具不同,它可用于构建包括UML和数据库在内的 8 多种不同建模类型,与VESA版捆绑在一起的Visio最新版本较以往大有改进,虽然称不上是最好的建模工具,但在很多情况下表现不俗,针对系统应该是够了 1.4 课题研究方法 本系统的分析设计采用面向对象的UML五步法建模,设计与实现采用.NET平台中VS.NET语言进行开发,数据库管理系统采用Microsoft公司的SQL Server,体系结构采用三层C/S结构。 UML是一种编制系统蓝图的标准化语言,可以对大型复杂系统的各种成分可视化说明并构造系统模型,以及建立各种必要的文档。UML通过三类图形建立系统模型:Use Case图,静态结构图(类图,对象图,组件图,配置图)和动态行为图(顺序图,协同图,状态图,活动图),这些图可以从不同抽象角度使系统可视化。UML具有面向对象、可视化、独立与开发过程和程序设计语言以及易于掌握使用等特点。UML适用于各种规模的系统开发,能促进软件复用,方便地集成已有的系统并有效减少开发中的各种风险[7]。 UML五步法步骤: (1)定义 通过用例图标识系统的需求。添加其他可清楚显示用例的图。 (2)细化 通过在活动图中捕获的场景(context)来详细描述每个需求中的步骤。 9 (3)分配 使用活动图来将步骤分配给系统的元素。 (4)设计 使用组件图来显示元素之间的关系。添加其他可清楚显示组件的图。 (5)重复/迭代/钻取/划分和征服。将过程单元缩小为单独的元素(使用类图进行设计);或者将其扩展到超阶级出整个系统的范围(使用部署图进行设计),添加其他可帮助理解系统的图,根据当前的范围重复一到四步。 1.5 本文研究的重点和难点 大学生学习论坛是一个很完善的系统,系统是在VS2005环境下开发的,提出实现大学生学习论坛的基本功能,该系统主要采用VS2005与SQL2005结合开发实现各方面的功能,在论文写作过程中,大学生学习论坛的总体设计;系统规划;系统分析;用户控件的设计;系统页面的美工成为了重点。本文研究的难点则是:系统的总体设计;系统规划,功能的实现 第二章 开发背景 现在不论是国内还是国外,人们都喜欢在论坛社区里讨论或查看自己喜欢的东西,随着论坛社区在人们生活中起到的作用越来越大,人们对论坛社区的重视程度也是越来越大。所以为了给大家创建一个安全、和谐的环境,国内外各大论坛社区对其社区的学习工作也是相当重视,开发符合自己要求的学习系统也是不可缺少的工作。 据国外媒体报道,无论是互联网,还是营销及传媒,其火爆程度均不如论坛社交网络。据IDC预计,到2012年企业社交网络产品规 10 模将达到20亿美元。如果企业在社交网络市场没有任何表现,那么这家企业已经落后了。所以对社区和社区学习系统的发展也是成上升趋势的。 第三章 系统分析 本系统采用了结构化生命周期法,结构化生命周期法是最常用的管理信息系统开发方法,分为四个步骤,即系统调研分析、数据库设计实现、界面设计实现和系统功能设计实现。其中系统调研分析阶段是最基础、也是最容易被开发人员忽视的环节。 3.1绘制业务流程图 在整个系统分析阶段,我在图书馆认真查看了很多关于大学生学习论坛方面的书籍,收集到了很多很多相关的资料,这些资料可以用作数据库设计的依据。和程序设计的查考 11 大学生学习论坛系统 帖黑关用图统修退 子名键户片计 改出 管单字管审密系 理 管管理 核 码 统 理 理 3.2用户需求分析 用户需求分析就是在用户需求调研的基础上,确定系统的总体结构方案,完成相应的需求分析。在确定系统的总体结构方案过程中,包括确定应用程序的结构、系统开发环境和系统的功能模块。用户需求调研结束之后,应该立即进行用户需求分析。 3.2.1应用程序结构确定 从用户应用角度来看,可把应用程序系统的组成部分分成数据存储层、业务处理层和界面表示层等3个层次,而应用程序结构可归纳为:集中式应用程序结构、单用户应用程序结构、多层服务器应用程序结构、浏览器,服务器应用程序结构、客户机,服务器应用程序结构等5种类型。 本大学生学习论坛就采用了当前最流行的客户机,服务器应用程序结构(即C/S结构) 12 3.2.2确定系统开发环境 由于大多数公司内部使用的计算机平台都是基于Windows环境的。为了降低系统成本,应最大程度地利用现有的资源、兼容现有的环境,可确定使用下面的开发环境: 操作系统:Windows2000;数据库:SQL2005 开发工具:VS2005集成开发环境 3.2.3确定系统的功能模块 通过分析确定库存系统将包含8个主要功能模块,即帖子管理,黑名单管理,关键字管理,用户管理,图片审核,统计,修改密码,退出系统。对于每一个功能模块,都进行了相应的功能设计保证系统的完整性和实用性。 第四章 系统设计 4.1总体设计 4.1.1系统功能分析 本系统需要完成的功能主要有以下几点。 研究目标: 1. 用户可以对帖子管理信息维护 2. 用户可以对黑名单信息维护 3. 用户可以对关键字信息维护 4. 用户可以对用户信息维护 5. 用户可以对图片审核维护 6. 用户可以统计 7. 用户可以修改密码 8. 用户可以退出系统 13 4.2详细设计 4.2数据库逻辑结构设计 在上面的实体以及实体之间关系的基础上,形成各个表格之间的关 系。 大学生学习论坛数据库中的各个表的设计结果如下面的几个表格所 示,,每个表格表示数据库中的一个表。 4.2.1连接信息 2 Link_Id int 4 0 varcha 0 Link_Name 100 1 r varcha 0 Link_Pic 500 1 r varcha 0 Link_Url 200 1 r varcha 0 Link_Alt 100 1 r Link_Adddadateti 1 8 1 te me 4.2.2大分类 2 MenuBig_Id int 4 0 varcha0 MenuBig_Name 50 1 r 0 MenuBig_Descriptvarcha200 1 14 ion r varcha 0 MenuBig_ImgUrl 200 1 r varcha 0 MenuBig_Admin 100 1 r MenuBig_Gradatio 0 int 4 1 n dateti 1 MenuBig_Adddate 8 1 me 4.2.3小分类 2 MenuSmall_Id int 4 0 varcha0 MenuSmall_Name 50 1 r varcha0 MenuSmall_Description 200 1 r varcha0 MenuSmall_ImgUrl 500 1 r varcha0 MenuSmall_Admin 100 1 r 0 MenuSmall_BigId int 4 1 15 dateti 0 MenuSmall_Adddate 8 1 me 0 MenuSmall_LastPostId int 4 1 0 MenuSmall_ToDayPost int 4 1 0 MenuSmall_ToDayPostBack int 4 1 0 MenuSmall_ToDayPostCount int 4 1 0 MenuSmall_PostCount int 4 1 1 MenuSmall_PostBackCount int 4 1 4.2.4消息 2 Message_Id int 4 0 varcha0 Message_Title 50 1 r varcha0 Message_Content 50 1 r 0 Message_Sender int 4 1 0 Message_Addressee int 4 1 0 Message_IsRead int 4 1 dateti1 Message_Adddate 8 1 me 4.2.5帖子信息 16 2 Post_Id int 4 0 varcha0 Post_Title 200 1 r 0 Post_Content text 16 1 varcha0 Post_Sender 50 1 r dateti0 Post_SendTime 8 1 me 0 Post_SmallId int 4 1 varcha0 Post_ImgType 50 1 r 0 Post_TypeId int 4 1 0 Post_State int 4 1 0 Post_Order int 4 1 0 Post_LastBackUserId int 4 1 dateti0 Post_LastBackDate 8 1 me 0 Post_BrowseCount int 4 1 0 Post_BackCount int 4 1 1 Post_HeartImg int 4 1 4.2.6帖子回复 17 2 PostBack_Id int 4 0 0 PostBack_Content text 16 1 varcha0 PostBack_Sender 50 1 r dateti0 PostBack_SendTime 8 1 me 1 PostBack_PostId int 4 1 4.2.7帖子状态 2 PostState_Id int 4 0 varcha1 PostState_Name 50 1 r 4.2.8帖子类型 2 PostType_Id int 4 0 varcha0 PostType_Name 50 1 r 0 PostType_MenuSmallId int 4 1 dateti1 PostType_Adddate 8 1 me 18 4.2.9站点信息 2 SiteInfo_Id int 4 0 0 SiteInfo_UserCount int 4 1 0 SiteInfo_NewUserId int 4 1 varcha0 SiteInfo_NewUserName 50 1 r 0 SiteInfo_ToDayPost int 4 1 0 SiteInfo_YesterDayPost int 4 1 0 SiteInfo_ToDayPostBack int 4 1 SiteInfo_YesterDayPostBac0 int 4 1 k 0 SiteInfo_ToDayPostCount int 4 1 SiteInfo_YesterDayPostCou0 int 4 1 nt 0 SiteInfo_PostCount int 4 1 0 SiteInfo_PostBackCount int 4 1 0 SiteInfo_PostTipTopCount int 4 1 dateti0 SiteInfo_PostTipTopDate 8 1 me 0 SiteInfo_OnlineCount int 4 1 19 0 SiteInfo_OnlineUserCount int 4 1 SiteInfo_OnlineCallerCoun0 int 4 1 t 0 SiteInfo_MaxOnline int 4 1 dateti0 SiteInfo_MaxOnlineDate 8 1 me dateti1 SiteInfo_BuildSiteDate 8 1 me 4.2.10Guest用户信息 2 Guest_Id int 4 0 varcha0 Guest_Ip 50 1 r dateti1 Guest_LoginDate 8 1 me 4.2.11黑名单 varcha2 UName 20 0 r nvarch1 UYY 50 1 ar 20 4.2.12用户基本信息 2 UserBase_Id int 4 0 varcha0 UserBase_Sex 10 1 r dateti0 UserBase_Birthday 8 1 me varcha0 UserBase_Seat 200 1 r varcha0 UserBase_Oicq 15 1 r varcha0 UserBase_Msn 200 1 r varcha0 UserBase_Pic 200 1 r varcha0 UserBase_Ink 1000 1 r 1 UserBase_UserId int 4 1 4.2.13用户其他信息 2 User_Id int 4 0 21 varcha0 User_Name 20 1 r varcha0 User_Pwd 50 1 r varcha0 User_Ask 100 1 r varcha0 User_Answer 100 1 r varcha0 User_Email 200 1 r dateti0 User_Adddate 8 1 me 0 User_Qx int 4 1 0 User_Online int 4 1 varcha0 User_Ip 15 1 r dateti0 User_LoginDate 8 1 me 1 User_LoginCount int 4 1 4.2.14用户状态 2 UserState_Id int 4 0 22 0 UserState_PostCount int 4 1 0 UserState_BackCount int 4 1 0 UserState_ClassicCount int 4 1 0 UserState_Exp int 4 1 0 UserState_Money int 4 1 0 UserState_Integral int 4 1 varcha 0 UserState_Title 100 1 r 1 UserState_UserId int 4 1 4(3系统安全性设计 系统数据库中包含多个二维表,所以在系统与数据库的连接上,并没有把数据库和系统的连接直接写入代码,而是通过对服务器端进行系统设置,使数据库名及路径不可见,并通过SQl2005的数据库安全设置,保证了数据库的安全性。系统根据用户身份不同赋予不同权限,用户用密码登陆,同样也保证了系统数据的安全性。 4.4研究方法 本系统主要采用VS2005作为开发平台,数据库采用SQL Server 2000 进行。其中运用到很多算法和SQL 2000 知识,在设计实现过程中遇到困难自己查资料和询问导师,争取把此系统做的更完善. 开发工具用的是VS2005,它的主要特点有: (1)直接编译生成可执行代码,编译速度快。由于VS2005编译器 23 采用了条件编译和选择链接技术,使用它生成的执行文件更加精炼,运行速度更快。在处理速度和存取服务器方面,VS2005的性能远远高于其他同类产品。 (2)支持将存取规则分别交给客户机或服务器处理的两种方案,而且允许开发人员建立一个简单的部件或部件集合,封装起所有的规则,并独立于服务器和客户机,所有的数据转移通过这些部件来完成。这样,大大减少了对服务器的请求和网络上的数据传输量,提高了应用处理的速度。 (3)提供了许多快速方便的开发方法,使开发人员能用尽可能少的重复性工作完成各种不同的应用。利用项目模板和专家生成器可以很快建立项目的构架,然后根据用户的实际需要逐步完善。 (4)具有可重用性和可扩展性。开发人员不必再对诸如标签、按钮及对话框等Windows的常见部件进行编程。VS2005包含许多可以重复使用的部件,允许用户控制Windows的开发效果。 (5)具有强大的数据存取功能。它的数据处理工具 BDE(BorlandDatabaseEngine)是一个标准的中介软件层,可以用来处理当前流行的数据格式,如xBase、Paradox等,也可以通过BDE的SQLLink直接与Sybase、SQLServer、Informix、Oracle等大型数据库连接。 VS2005既可用于开发系统软件,也适合于应用软件的开发。 (6)拥有强大的网络开发能力,能够快速的开发B/S应用,它内置的IntraWeb和ExpressWeb使得对于网络的开发效率超过了其他任何的开发工具。 24 (7)VS2005使用独特的VCL类库,使得编写出的程序显得条理清晰,VCL是现在最优秀的类库,它使得VS2005在软件开发行业处于一个绝对领先的地位。用户可以按自己的需要,任意的构建、扩充、甚至是删减VCL,以满足不同的需要。 数据库是系统的核心。在综合比较了各数据库的特点,系统的开发选择SQL Server数据库。 (1)SQL Server 数据库作为面向对象的关系型数据库系统,具有数据完整性、安全性、并发控制、事物处理和恢复等性能,专为大、中和小规模的业务需求而优化设计,通过使用功能强大且易于使用的数据库、中间件和工具,为大、中和小规模的客户机/服务器应用提供了完整的解决方案。 (2)使用工业标准的SQL Server,可以实现工作组、部门和企业透明的信息共享,如果是非 SQL Server数据源,使用ODBC技术,可以将它们联接起来。 可行性分析: 4.5 经济可行性: 作为这样的性质较大的场所,其经济成分比重相对较大,主要是支出的费用:管理费用,清洁费用,日常维护费用,这样可以很大成都的减少维护上的费用,大大的节省了管理成本 4.6技术可行性分析 技术上的可行性分析主要分析现有技术条件能否顺利完成开发工作, 25 硬件、软件配置能否满足开发者的需要,各类技术人员的数量,水平,来源等。教材系统的工作主要是在管理和信息之间架起一座桥梁,能相互沟通信息和处理信息。这一特点非常适合计算机特点,通过网络internet技术,发挥计算机的信息传输速度快、准确度高的优势。计算机硬件和软件技术的飞速发展,为系统的建设提供了技术条件。 第五章 系统实施 5(1、开发工具简介 5.1.1. VS2005简介 VS2005,是Windows平台下著名的快速应用程序开发工具(Rapid Application Development,简称RAD)。它的前身,即是DOS时代盛行一时的“BorlandTurbo Pascal”,最早的版本由美国Borland(宝兰)公司于1995年开发。主创者为Anders Hejlsberg。经过数年的发展,此产品也转移至Embarcadero公司旗下。VS2005是一个集成开发环境(IDE),使用的核心是由传统Pascal语言发展而来的Object Pascal,以图形用户界面为开发环境,透过IDE、VCL工具与编译器,配合连结数据库的功能,构成一个以面向对象程序设计为中心的应用程序开发工具 由Borland公司推出的VS2005是全新的可视化编程环境,为我们提供了一种方便、快捷的Windows应用程序开发工具。它使用了 26 Microsoft Windows图形用户界面的许多先进特性和设计思想,采用了弹性可重复利用的完整的面向对象程序语言(Object-Oriented Language)、当今世界上最快的编译器、最为领先的数据库技术。对于广大的程序开发人员来讲,使用VS2005开发应用软件,无疑会大大地提高编程效率,而且随着应用的深入,您将会发现编程不再是枯燥无味的工作——VS2005的每一个设计细节,都将带给您一份欣喜。 VS2005是Borland公司研制的新一代可视化开发工具,可在Windows3.x、Windows95、WindowsNT、WindowsXP、Windows Vista等环境下使用。当前,VS2005 也可以在LINUX平台上开发应用,其在LINUX上的对应产品Kylix。 VS2005 拥有一个可视化的集成开发环境(IDE),采用面向对象的编程语言ObjectPascal和基于部件的开发结构框架。VS2005它提供了500多个可供使用的构件,利用这些部件,开发人员可以快速地构造出应用系统。开发人员也可以根据自己的需要修改部件或用VS2005本身编写自己的部件。主要特点如下: 5(2 系统实现 本系统采用了三层框架结构,操作起来方便简单,其中数据库操作基类代码如下: using System; using System.Data; using System.Data.SqlClient; using System.Configuration; 27 namespace WeYyzyq.DBUtility { /// /// 数据库操作基类 /// 实现对Sql数据库的各种操作 /// public class SqlDataBase { //获取Web.Config数据库连接字符串 private readonly string SqlConnectionString = ConfigurationManager.ConnectionStrings["ConnectionString"]. ConnectionString; private SqlConnection cn; //创建SQL连接 private SqlDataAdapter sda; //创建SQL数据适配器 private SqlDataReader sdr; //创建SQL数据读取器 private SqlCommand cmd; //创建SQL命令对象 private SqlParameter param; //创建SQL参数 private DataSet ds; //创建数据集 private DataView dv; //创建视图 28 /// /// 打开数据库连接 /// public void Open() { #region cn = new SqlConnection(SqlConnectionString); cn.Open(); #endregion } /// /// 关闭数据库连接 /// public void Close() { #region if (cn != null) { cn.Close(); 29 cn.Dispose(); } #endregion } /// /// 返回DataSet数据集 /// /// SQL语句 public DataSet GetDs(string strSql) { #region Open(); sda = new SqlDataAdapter(strSql, cn); ds = new DataSet(); sda.Fill(ds); Close(); return ds; #endregion } 30 /// /// 添加DataSet表 /// /// DataSet对象 /// Sql语句 /// 表名 public void GetDs(DataSet ds, string strSql, string strTableName) { #region Open(); sda = new SqlDataAdapter(strSql, cn); sda.Fill(ds, strTableName); Close(); #endregion } /// /// 返回DataView数据视图 /// /// Sql语句 31 public DataView GetDv(string strSql) { #region dv = GetDs(strSql).Tables[0].DefaultView; return dv; #endregion } /// /// 获得DataTable对象 /// /// SQL语句 /// public DataTable GetTable(string strSql) { #region return GetDs(strSql).Tables[0]; #endregion } 32 /// /// 获得SqlDataReader对象 使用完须关闭DataReader,关闭数据库连接 /// /// sql语句 /// public SqlDataReader GetDataReader(string strSql) { #region Open(); cmd = new SqlCommand(strSql, cn); sdr = cmd.ExecuteReader(System.Data.CommandBehavior.CloseConnecti on); return sdr; #endregion } /// /// 执行Sql语句 33 /// /// public void RunSql(string strSql) { #region Open(); cmd = new SqlCommand(strSql, cn); cmd.ExecuteNonQuery(); Close(); #endregion } /// /// 执行SQL语句,并返回第一行第一列结果 /// /// SQL语句 /// public string RunSqlReturn(string strSql) { #region 34 string strReturn = ""; Open(); try { cmd = new SqlCommand(strSql, cn); strReturn = cmd.ExecuteScalar().ToString(); } catch { } Close(); return strReturn; #endregion } /// /// 执行存储过程 /// /// 存储过程的名称 /// 返回存储过程返回值 public int RunProc(string procName) { #region 35 cmd = CreateCommand(procName, null); cmd.ExecuteNonQuery(); Close(); return (int)cmd.Parameters["ReturnValue"].Value; #endregion } /// /// 执行存储过程 /// /// 存储过程名称 /// 存储过程所需参数 /// 返回存储过程返回值 public int RunProc(string procName, SqlParameter[] prams) { #region cmd = CreateCommand(procName, prams); cmd.ExecuteNonQuery(); Close(); return 36 (int)cmd.Parameters["ReturnValue"].Value; #endregion } /// /// 执行存储过程返回DataReader对象 /// /// Sql语句 /// DataReader对象 public void RunProc(string procName, SqlDataReader dataReader) { #region cmd = CreateCommand(procName, null); dataReader = cmd.ExecuteReader(System.Data.CommandBehavior.CloseConnecti on); #endregion } /// /// 执行存储过程 37 /// /// 存储过程的名称 /// 存储过程所需参数 /// DataReader对象 public void RunProc(string procName, SqlParameter[] prams, SqlDataReader dataReader) { #region cmd = CreateCommand(procName, prams); dataReader = cmd.ExecuteReader(System.Data.CommandBehavior.CloseConnection); #endregion } /// /// 创建一个SqlCommand对象以此来执行存储过程 /// /// 存储过程的名称 /// 存储过程所需参数 /// 返回SqlCommand对象 private SqlCommand CreateCommand(string procName, 38 SqlParameter[] prams) { #region // 确认打开连接 Open(); cmd = new SqlCommand(procName, cn); cmd.CommandType = CommandType.StoredProcedure; // 依次把参数传入存储过程 if (prams != null) { foreach (SqlParameter parameter in prams) cmd.Parameters.Add(parameter); } // 加入返回参数 cmd.Parameters.Add( new SqlParameter("ReturnValue", SqlDbType.Int, 4, ParameterDirection.ReturnValue, false, 0, 0, string.Empty, DataRowVersion.Default, null)); 39 return cmd; #endregion } /// /// 传入输入参数 /// /// 存储过程名称 /// 参数类型 /// 参数大小 /// 参数值 /// 新的 parameter 对象 public SqlParameter MakeInParam(string ParamName, SqlDbType DbType, int Size, object Value) { #region return MakeParam(ParamName, DbType, Size, ParameterDirection.Input, Value); #endregion 40 } /// /// 传入返回值参数 /// /// 存储过程名称 /// 参数类型 /// 参数大小 /// 新的 parameter 对象 public SqlParameter MakeOutParam(string ParamName, SqlDbType DbType, int Size) { #region return MakeParam(ParamName, DbType, Size, ParameterDirection.Output, null); #endregion } /// /// 生成存储过程参数 /// 41 /// 存储过程名称 /// 参数类型 /// 参数大小 /// 参数方向 /// 参数值 /// 新的 parameter 对象 public SqlParameter MakeParam(string ParamName, SqlDbType DbType, Int32 Size, ParameterDirection Direction, object Value) { #region if (Size > 0) param = new SqlParameter(ParamName, DbType, Size); else param = new SqlParameter(ParamName, DbType); param.Direction = Direction; if (!(Direction == ParameterDirection.Output && Value == null)) param.Value = Value; 42 return param; #endregion } } } 5.2.1前台首页 界面如下 代码如下 using System; using System.Data; using System.Configuration; using System.Collections; 43 using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls; using WeYyzyq.Logic; using WeYyzyq.Comp; public partial class _Default : System.Web.UI.Page { Bbs_MenuBig menubig = new Bbs_MenuBig(); Bbs_MenuSmall menusmall = new Bbs_MenuSmall(); VldUsers vuser = new VldUsers(); protected void Page_Load(object sender, EventArgs e) { if (!IsPostBack) BindMenuBig(); } private void BindMenuBig() 44 { menubig.BindMenuBig(dlMenuBig); } protected void dlSmall_ItemCommand(object source, DataListCommandEventArgs e) { if (e.CommandName == "SendPost") vuser.SendPost(((Label)e.Item.FindControl("lblSmallId")).Text); } protected void dlSmall_ItemDataBound(object sender, DataListItemEventArgs e) { #region 显示版块是否有新帖子 if (e.Item.ItemType == ListItemType.AlternatingItem || e.Item.ItemType == ListItemType.Item) { HtmlImage img = (HtmlImage)e.Item.FindControl("imgToday"); 45 Label lblToday = (Label)e.Item.FindControl("lblToday"); img.Src = Equals(lblToday.Text, "0") ? "images/day0.gif" : "images/day1.gif"; } #endregion } protected void dlMenuBig_ItemDataBound(object sender, DataListItemEventArgs e) { if (e.Item.ItemType == ListItemType.AlternatingItem || e.Item.ItemType == ListItemType.Item) { menusmall.BindMenuSmallBig((DataList)e.Item.FindControl("dlMenuSmall"), ((Label)e.Item.FindControl("lblId")).Text); } } } 5.2.2后台管理登陆 界面如下: 46 关键代码如下: Users user = new Users(); protected void Page_Load(object sender, EventArgs e) { } protected void btDl_Click(object sender, EventArgs e) { user.VldManageUserLogin(UserLoginControl1.GetUserName, UserLoginControl1.GetPassWord, UserLoginControl1.GetMemory); } } /// /// 管理用户登录 /// /// 用户名 47 /// 密码 /// 是否保存登录信息 public void VldManageUserLogin(string strUserName, string strPassWord, bool Memory) { if (!user.Vld_ManageUser(StringUtil.InputText(strUserName, 10), StringUtil.EncryptPassword(strPassWord, StringUtil.PasswordType.MD5.ToString()))) Jscript.Alert("用户名或密码不正确~"); else { HttpContext.Current.Response.Cookies.Add(new HttpCookie("ManageId", HttpUtility.UrlEncode(strUserName))); System.Web.Security.FormsAuthentication.RedirectFromLoginPa ge(strUserName, false); if (Memory) { 48 HttpContext.Current.Request.Cookies["ManageId"].Expires = DateTime.MaxValue; } HttpContext.Current.Response.Redirect("ManageMain.aspx"); } } 5.2.3关键字 代码如下: /// /// 返回DataSet数据集 /// /// SQL语句 49 public DataSet GetDs(string strSql) { #region Open(); sda = new SqlDataAdapter(strSql, cn); ds = new DataSet(); sda.Fill(ds); Close(); return ds; #endregion } using System; using System.Data; using System.Configuration; using System.Collections; using System.Web; using System.Web.Security; using System.Web.UI; using System.Web.UI.WebControls; using System.Web.UI.WebControls.WebParts; using System.Web.UI.HtmlControls; 50 using WeYyzyq.SQLDAL; public partial class Manage_GZJ : System.Web.UI.Page { protected void Page_Load(object sender, EventArgs e) { } protected void Button1_Click(object sender, EventArgs e) { } protected void Button1_Click1(object sender, EventArgs e) { Users u = new Users(); string str = "select * from Bbs_Post where Post_Title like '%" + this.TextBox1.Text + "%'"; this.GridView1.DataSource = u.GetDs(str); this.GridView1.DataBind(); } } 5.2.4统计 51 关键代码如下: public IList GetPostListTJ() { IList postlist = new List(); strSql = "select * from V_Bbs_PostListBig order by Post_BrowseCount desc"; sdr = GetDataReader(strSql); while (sdr.Read()) { postlist.Add(new Bbs_PostListInfo(sdr.GetString(1), sdr.GetString(8), sdr.GetDateTime(9), sdr.GetInt32(10), sdr.GetInt32(11))); } sdr.Close(); 52 sdr.Dispose(); return postlist; } 5.2.5用户管理 if (this.TextBox1.Text == "") { Response.Write(""); } else { string sql = "select * from Users where User_Name='" + this.TextBox1.Text + "'"; DataTable dt = bbs.GetDs(sql).Tables[0]; Label1.Text = dt.Rows[0]["User_Name"].ToString(); Label2.Text = 53 dt.Rows[0]["User_Email"].ToString(); Label3.Text = dt.Rows[0]["User_Adddate"].ToString(); Label5.Text = dt.Rows[0]["User_Ip"].ToString(); Label4.Text = dt.Rows[0]["User_LoginDate"].ToString(); Label6.Text = dt.Rows[0]["User_LoginCount"].ToString();第六章 系统使用说明 版本说明: 1.开发工具VS2005数据库SQl2005 2.数据库的连接字符串在一个单独的类文件中,附加后数据库后,修改连接字符串为本地数据库的密码即可 3.程序入口为Login默认用户名密码;admin/admin 第七章 致谢词 在老师和同学的帮助下,我所开发的系统得到顺利的完成与实现。 感谢我所有的同学和朋友。在学习生涯中,他们给了我许多帮助,带给我无限的快乐 。是他们陪我一起走过学生时代,和我同舟共济,共同迎接困难和挑战,他们对我的种种支持和帮助,最是感激不尽。 最后,感谢所有的老师。是他们传授给我了宝贵知识,是他们使我学会了奋斗与拼搏,同样是他们使我懂得了坚强与自信。他们在我的大学期间付出了很多的心血与精力,在我的学习道路中,他们孜孜不倦的教诲和鼓舞是促进我不断进取的重要精神动力。 54 第八章 结束语 经过这一个月来对系统的分析、设计,使我对大学生学习论坛有了全面的了解与认识,同时对大学生学习论坛做了具体的解剖。 我认为大学生学习论坛成功的关键在于以下几方面: (1) 导航界面的清晰,简单设计。界面的清晰简单可以使学习用户一目了然,轻松的找到自己浏览本系统的目的所在。不需要在花费大量时间来寻找本系统的内容,浪费用户时间,甚至打消用户的积极性。 (2) 系统的易管理性。系统的管理对于系统的维护来说很重要,社会是不断进步与发展的,用户对于管理的要求也越来越高。因此系统要随着用户的需求而不断发生变化,不断更新系统的内容来满足用户更多的需求。本系统是利用VS2005编程语言和SQLServer数据库编译设计的,运行环境简单. 本系统的大部分模块已经实现,并且也符合以上几个特性。但是,一个完整的系统仅仅靠两月的分析、设计来开发是远远不够的,它需要更长的时间来测试并完善。因此,本系统仍然存在着一些需要改进和不足的问题。比如系统的整体设计需要进一步的美观,系统的自适应性还不够完善还需要进一步的改善和加强,系统的内容需要更加丰富和多样化。随着研究的进行,可能还会出现其他一些问题,我会继续努力,逐步改善和不断完善本系统。 参考文献 主要参考文献与外文翻译文件(由指导教师选定) [1] [美]Stephen Walther,汤涛.ASP.NET揭秘(第二版)ASP.NET UNLEASHED Second Edition[M].北京:中国电力出版社,2007 [5] 张蒲生,何升.SQL Server数据库应用技术[M].北京:清华大学出版社,2004 55 [3] [美] 麦斯科 颜炯 译.C#设计模式[M].北京:中国电力出版社,2003 [4]张跃延,王小科,许文武.ASP.NET 数据库系统开发案例精选[M].北京:人民邮电出版社,2007 [5]张丹,何山.电子商务网站建设技术基础[M].成都:西南财经大学出版社,2008 [6] 郭兴峰,陈建伟. ASP .NET动态网站开发基础教程(C#篇)[M].北京:清华大学出版社,2006 [7] 杨志姝, 冯小飞. ASP+SQL Server基础练习+典型案例[M].北京:清华大学出版社,2006.8 [8]聂小燕,鲁才,许文波.美工神话CSS网站布局与美化[M].北京:人民邮电出版社,2007,8 [9]王智强,张桂敏.网页设计完全攻略[M].北京:中国电力出版社,2007,3 56
/
本文档为【大学生交流平台-毕业论文】,请使用软件OFFICE或WPS软件打开。作品中的文字与图均可以修改和编辑, 图片更改请在作品中右键图片并更换,文字修改请直接点击文字进行修改,也可以新增和删除文档中的内容。
[版权声明] 本站所有资料为用户分享产生,若发现您的权利被侵害,请联系客服邮件isharekefu@iask.cn,我们尽快处理。 本作品所展示的图片、画像、字体、音乐的版权可能需版权方额外授权,请谨慎使用。 网站提供的党政主题相关内容(国旗、国徽、党徽..)目的在于配合国家政策宣传,仅限个人学习分享使用,禁止用于任何广告和商用目的。
热门搜索

历史搜索

    清空历史搜索