个人博客 毕业设计论文-2011.6.17_第1页
个人博客 毕业设计论文-2011.6.17_第2页
个人博客 毕业设计论文-2011.6.17_第3页
个人博客 毕业设计论文-2011.6.17_第4页
个人博客 毕业设计论文-2011.6.17_第5页
已阅读5页,还剩35页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

东北石油大学本科生毕业设计 论文 摘 要 越来越多的网络用户希望能够在网络平台上更多地展现自己的个性 更方便 地与他人进行互动交流 拥有一个自己的独立的空间 随着 Web 时代的到来 一 个新的概念出现了 博客 本次毕业设计所开发的博客系统包括两大功能 为前台用户提供的浏览功能 和为博主提供的管理功能 浏览功能是指前台用户可以根据分类和日期信息检索 日志 已经注册的用户还可以对日志进行评论 而博主拥有对博客网站的后台管 理功能 主要包括发表日志 修改日志 删除日志 管理日志分类 管理评论 密码管理 用户管理等功能 本网站基于B S模式 采用完全面向对象的思想设计 在Visual Studio 2005 集成开发环境下结合C 语言和ASP NET技术开发 后台数据库使用SQL Server 2000 关键字 博客 ASP NET SQL Server 2000 Visual Studio 2005 东北石油大学本科生毕业设计 论文 Abstract More and more network users hope to show their characteristics on web platforms and interact with other people more conveniently and have an independent space From the beginning of Web a new concept of blog emerged The blog system completed during the graduation design consists of two function modules information browsing provided for the users of onstage and information management function for bloggers The information browsing function refers to the searching function according to category and date of articles registered users can comment on articles To bloggers have the management function on the blog website background mainly including publishing articles articles management articles classification management reviews management password management user management etc This website system is based on the model of B S It is developed in the environment of Visual Studio 2005 with the technology of ASP NET and C programming language using object oriented ideas the database of background is SQL Server 2000 Key words Blog ASP NET SQL Server 2000 Visual Studio 2005 东北石油大学本科生毕业设计 论文 I 目 录 第第 1 章章 概概 述述 1 1 1 系统开发的背景 1 1 2 课题研究的意义及设计目标 2 第第 2 章章 博客系统开发相关技术博客系统开发相关技术 4 2 1 ASP NET 介绍 4 2 2 数据库的介绍 4 2 3 三层结构 5 2 4 IIS 简介 6 第第 3 章章 博客系统需求分析博客系统需求分析 8 3 1 系统的可行性研究 8 3 2 系统需求分析 9 3 3 总体流程分析 10 3 4 系统详细流程分析 10 第第 4 章章 博客系统总体设计博客系统总体设计 12 4 1 数据库设计 12 4 2 功能模块设计 16 第第 5 章章 博客系统详细设计博客系统详细设计 19 5 1 开发环境部署 19 5 2 连接数据库 20 5 3 页面样式设计与实现 21 5 4 系统前台功能详细设计 22 5 5 系统后台功能详细设计 26 5 6 数据分页 29 第第 6 章章 系统测试系统测试 31 6 1 测试方法 32 6 2 测试过程 32 东北石油大学本科生毕业设计 论文 II 结结 论论 34 参考文献参考文献 35 致致 谢谢 36 东北石油大学本科生毕业设计 论文 1 第 1 章 概 述 1 1 系统开发的背景 博客 Blog或Weblog 一词源于 Web Log 网络日志 的缩写 是一 种十分简易的傻瓜化个人信息发布方式 任何人都可以像使用免费电子邮件一样 完成个人网页的创建 发布和更新 博客就是开放的私人空间 可以充分利用超 文本链接 网络互动 动态更新等特点 在网络中 精选并链接全球互联网中最 有价值的信息 知识与资源 也可以将个人工作过程 生活故事 思想历程 闪 现的灵感等及时记录和发布 发挥个人无限的表达力 更可以以文会友 结识和 汇聚朋友 进行深度交流沟通 1 博客 当然是个大家都熟悉的名词 博客的英文名词就是 Blog或 Weblog 指人时对应于Blogger 是一个典型的网络事物 该词来源于 Web Log 网络日志 的缩写 特指一种特别的网络个人出版形式 内容按照时间顺 序排列 并且不断更新 博客是一种零编辑 零技术 零成本 零形式的网上个 人出版方式 博客概念一般包含了三个要素 当然 也不需要局限这些定义 1 网页主体内容由不断更新的 个性化的众多日志组成 2 按时间顺序排列 而且是倒序方式 也就是最新的放在最上面 最旧的放 在最下面 3 内容可以是各种主题 各种外观布局和各种写作风格 但是文章内容以 超链接 作为重要的表达方式 因此 博客是个人性和公共性的结合体 其精髓不是主要表达个人思想 不 是主要记录个人日常经历 而是以个人的视角 以整个互联网为视野 精选和记 录自己在互联网上看到的精彩内容 为他人提供帮助 使其具有更高的共享价值 博客精神的核心并不是自娱自乐 甚至不是个人表达自由 相反 是体现一 种利他的共享精神 为他人提供帮助 个人日记和个人网站主要表现的还是 小 我 而博客表现的是 大我 也许形式上很接近 但内在有着本质的差异 所 有优秀博客网站中 真正表达作者个人的内容非常有限 最多只是点缀 而不像 个人网站那样是核心 2 博客的精神是 自由表达 开放宽容 个性张扬 专业精神 东北石油大学本科生毕业设计 论文 2 在没有自己的博客之前 人们会经常进出于论坛发表贴子或者通过即时通信 软件聊天 来表达自已的想法 可是这些都是零散的和杂乱的 博客的出现 让 人们可以不断的把自己以前的和每天激发的一些想法或者感受整理放在自己的博 客上 每次在写文章的时候 可能又会产生新的想法 虽然一些想法一些思考只 是皮毛 没有什么深度 但是当下笔去写的时候每次都会对某个小小的问题有了 更多的一点点思考 在写博客的时候就感觉到了一种满足感 一种想法得以释放 思考得以延伸的满足感 生活中每天的一个小小的事情都会引起人们的思考 甚 至是和朋友的聊天中一个小小的火花迸发 督促自己努力 把一时的想法变成观 点 争取在生命中的每天里留下点什么 这也是人们写博客的目的之一 这样就 能督促自己每一天不要浑浑噩噩 时光流逝无痕无声无息 写博客也是在自己的 每一天上留下了一道浅浅的思考和划痕 3 不仅如此 通过写博客 记录自己的想法可以帮助实现如下这些目的 1 记录生活 在自己的每一天上留下思考的划痕 2 整理思路 固化知识 获得更多更好的想法 3 分享 将自己的想法 经验与人分享 4 交流 提高 通过交流产生更多的思维火花 相互提高 5 交友 互相鼓励 一路同行 如果说博客网站是一个舞台 那么所有的博客都是其中的舞者 把自己有价 值的真实的一面展示在网络世界中 相互交流沟通 如果博客仅仅为了写日志 那么博客是一面镜子 镜子中展现的是真实的自己 如果博客是一个自由媒体 可以把自身感觉有价值的信息通过博客这个工具发布 与网友共享 1 2 课题研究的意义及设计目标 1 2 1 课题研究的意义 随着Blog人数的增加 Blog作为一种生活方式 工作方式和学习方式已经被 更多的人所接受 并且在改变传统的网络和社会结构 它使交流和沟通更有明确 的选择和方向性 单一的思想和群体的智慧结合变得更加有效 个人出版变成人 人都可以实现的梦想 Blog正在影响和改变着我们的生活 博客能让个人在互联网上表达自己的心声 这是一个收集和共享任何感兴趣 的事物的地方 许多人使用博客只是要组织自己的想法 而有些人则在全球成千 上万的浏览者中赢得影响力 职业和业余新闻记者使用博客发布特发新闻 而有 写日记习惯的人则会在博客中宣示自己内心的想法 而摄影和美术发烧者 可以 通过博客系统发表管理自己的作品 无论您要发表什么意见 博客都可以帮您表 达出来 博客作为一种新表达的方式 它传播的不仅是情绪 而且也包括大量的 东北石油大学本科生毕业设计 论文 3 智慧 意见和思想 某种意义上说 它也是一种新的文化现象 博客的出现和繁 荣 真正凸现网络的知识价值 标志着互联网发展开始步入更高的阶段 本系统基于设计实现了一个简单的博客系统 使更多的人们通过文字 图片 声音 视频 无线等 尽情展示自我 分享感受 参与交流 美好你我生 活 Show you share me 人人都可以博客 人人都需要博客 1 2 2 设计目标 系统是用实现的一个完全基于浏览器的博客系统 博客系统主要拥有 以下几种功能 前台 日志展示 最新日志展示 精华日志展示 日志列表 评论展示 最新评论 所有评论 相册展示 浏览相册 评论相册 留言展示 最新留言 所有留言 用户管理 用户登录 用户注册 查询管理 日志查询 后台 个人信息管理 信息修改 信息添加 日志管理 撰写日志 修改日志 删除日志 日志发布 日志分类管理 添加分类 修改分类 删除分类 相册管理 照片的添加 描述与分类 照片的删除 评论管理 回复评论 删除评论 留言管理 回复留言 删除留言 东北石油大学本科生毕业设计 论文 4 第 2 章 博客系统开发相关技术 2 1 ASP NET 介绍 本系统采用ASP NET开发技术进行开发 ASP NET不仅仅是ASP的一个新版 本 更是Web应用程序编程方面的一个全新的概念和方法 ASP NET中的新功能 并不是对ASP的改进 设计它的初衷是为用户入境提供最佳的应用程序架构 它 相比于ASP有着以下几个方面的优点 1 多语言 ASP曾在脚本引擎方面受到了限制 特别是VBScript和Jscript 而ASP NET则 支持多种语言 默认情况下为Visual Basic NET C 和Jscript NET 2 服务器处理 ASP在服务器处理上不管页面的内容是纯HTML还是ASP生成的HTML 它都 是按照实现 形成所谓 3 tier页面顺序显示的 因此逻辑代码依赖于它在页面中的 位置 并且无法将HTML控件作为目标 除非将它们作为流入的一部分进行显示 而ASP NET就解决了这个问题 方法是为控件引入一个声明的基于服务器的模型 因为控件在服务器上有 可以在服务器上编程 也可以是客户端驱动的事件 4 3 Web Form控件 将现有的HTML控件转换为服务器端的控件是比较容易的 但是也存在一些 不方便 例如比较难于区分HTML控件和服务器端的控件 于是Microsoft公司就 创建了一组专门的服务器控件 它们都用asp前缀标识 4 代码与内容分离 一个网站的设计与开发往往由不同的人来实现的 而ASP中就是存在着这样 一个问题 代码 ASP脚本 和内容 HTML 混合在一起 这样就使得同时进 行设计和开发变得很困难 而ASP NET则采用了代码内联和后台编码两种方法实 现了代码与内容的分离 5 2 2 数据库的介绍 2 2 1 SQL SERVER 2000 SQL SERVER 2000 是可以在Web上运行的数据库服务产品 它既可适用于桌 面系统的单用户数据库 也可适用于企业的网络数据库 甚至适用于专业的Web 东北石油大学本科生毕业设计 论文 5 站点数据库 具有很强的可伸缩性 并且具有很高的可靠性 可用性和可管理性 从经济和开发效率上适合中小型网站 它和ASP NET同属于微软公司开发 在开 发接口有一致性 能更好的协调工作 同时 SQL SERVER 2000 对数据的安全 性也有一定的保障 它对用户的访问进行了两个阶段的检查 一是认证阶段 二 是许可确认阶段 数据库使用ADO NET来处理数据 6 2 2 2 ADO NET ADO NET是基于 NET框架结构 面向分布式和以XML数据格式为核心的数 据访问技术 它提供了一组数据访问服务的类 可用于对Microsoft SQL Server Oracle等数据源及通过OLEDB和XML公开的数据远源的一致访问 ADO NET统一了数据容器类编程接口 无论编写何种应用程序 Windows窗体 Web窗体 Web服务 都可以通过同一组类来处理数据 为使用方便 ADO NET 还提供了一组丰富的控件 利用可视化方式来开发数据库应用 ADO NET体系结构的两大核心控件是 NET Framework数据提供程序和 Dataset NET Framework数据提供程序用于连接到数据库 执行命令和检索结果 Dataset是一个功能丰富 比较复杂的数据集 它是支持ADO NET的断开式 分布 式数据方案的核心对象 Dataset专门用来处理从数据源获得的数据 无论数据来 自什么数据源 它都使用相同的方式操作数据 7 2 3 三层结构 2 3 1 三层结构的介绍 所谓三层体系结构 是在客户端与数据库之间加入了一个中间层 也叫组件 层 这里所说的三层体系 不是指物理上的三层 不是简单地放置三台机器就是 三层体系结构 也不仅仅有B S应用才是三层体系结构 三层是指逻辑上的三层 即使这三个层放置到一台机器上 三层体系的应用程序将业务规则 数据访问 合法性校验等工作放到了中间层进行处理 通常情况下 客户端不直接与数据库 进行交互 而是通过COM DCOM通讯与中间层建立连接 再经由中间层与数据 库进行交换 8 2 3 2 ASP NET 中的三层结构 用三层结构主要是使项目结构更清楚分工更明确 有利于后期的维护和升级 东北石油大学本科生毕业设计 论文 6 数据访问层 主要是对原始数据 数据库或者文本文件等存放数据的形式 的操作层 而不是指原始数据 也就是说是对数据的操作 具体为业务逻辑层或 表示层提供数据服务 业务逻辑层 主要是针对具体的问题的操作 也可以理解成对数据层的操作 对数据业务逻辑处理 如果说数据层是积木 那逻辑层就是对这些积木的搭建 表示层 主要表示Web方式 也可以表示成WINFORM方式 Web方式也可 以表现成aspx 如果逻辑层相当强大和完善 无论表现层如何定义和更改 逻辑 层都能完善地提供服务 2 4 IIS 简介 IIS Internet Information Services 是一个World Wide Web server Gopherserver和FTPserver全部包容在里面 IIS意味着你能发布网页 并且 有ASP JAVA VBscript产生页面 有着一些扩展功能 IIS 支持一些有趣的东 西 有编辑环境的页面 有全面检索功能 有多媒体功能 其次 IIS是随Windows NT Server4 0 一起提供的文件和应用程序服务器 是在Windows NT Server上建立 Internet 服务器的基本组件 它与Windows NT Server完全集成 允许使用 Windows NT Serve内置的安全性以及NTFS文件系统建立强大灵活的 Internet Intranet站点 2 4 1 IIS 的安装 IIS可以在Windows NT 安装时安装 也可以安装完WindowsNT后用 控制面 板 中的 添加 删除程序 安装 安装路径为下载的软件包的路径 安装过程中 要求添加相应的ODBC 驱动程序 9 2 4 2 IIS 的管理 IIS通过ISM进行管理 ISM有两个版本 一个以普通应用程序的方式运行 一个在Web浏览器中运行 二者的差别在于后者不能启动和停止Internet服务 ISM管理界面 在 查看 菜单中选择 查看报告 服务器查看 服务 查看 可以得到三种视图 报告视图 按字母顺序依次显示所选择的计算机及其上安装的服务 通过该 视图可以 连到服务器并显示属性对话框 启动 停止或暂停服务 可以选择显 示哪些服务 服务器视图 显示网络上运行Internet 服务的计算机名 打开该计算机可以 看到正在运行的Internet 服务 双击服务器名可以显示其属性对话框 东北石油大学本科生毕业设计 论文 7 服务视图 列出所有的Internet服务 打开服务可以看到哪些计算机运行该服 务 双击服务下的计算机名 可以打开该计算机上的服务属性对话框 2 4 3 IIS 安全性 IIS 的安全性核心依赖于Windows NT Server内置的安全性 IIS自身也内置了 安全性 包括加密 验证以及扩展IIS扩展等 1 Windows NT Server 安全性 Windows NT 提供用户账户安全性 NTFS 安 全性 用户安全性 Windows NT要求用户提供有效的账号以及口令才能访问 Windows NT IIS安装时创建Internet Guest账户 缺省情况下 所有 IIS 用户都 使用这个账户登录到服务器 这个账户只允许本地登录 没有其他权限 假如允 许远程用户用登录Internet Guest 账户登录就不必给远程用户用户名及口令 WindowsNT 以Internet Guest 账号登录就不必给远程用户用户名及口令 WindowsNT 以Internet Guest账户对待 NTFS文件安全性 NTFS提供安全性 可以控制对数据文件的访问 应当将 数据文件放在NTFS分区 NTFS可以精确控制哪些用户和组以什么权限访问文件 和目录 10 2 IIS的安全性 除了Windows NT 的安全措施外 IIS 本身也有安全控制能 力 通过账户名及口令控制访问 可以配置WWW服务器之间提供一个合法的用 户名及口令 2 4 4 搭建 IIS 服务器应该注意的问题 1 IIS安全设置之安装系统 补丁 对于服务器来说就特别重要 因为安全 补丁关乎到系统安全 而 微软网站经常发布最新的系统安全补丁 可以用系 统自带的windows update程序随时更新 2 IIS安全设置之FTP目录的设定 FTP目录没有设置也容易被别人攻击 一般的就是将主目录指定到逻辑盘 为了安全 要对每个目录按不同的用户设 置不同的访问权限 然后关闭一些不需要的服务 这样可以对不良人士利用 IIS溢出漏洞访问到系统盘作个第一级防护 3 IIS安全设置之端口设置 IIS有默认的端口设置 只要稍有计算机知识 的人都会记得这些端口的 要破解的话就十分的方便 所以尽量不要使用 21 这个默认端口号 并启用日志 以便 FTP服务出现异常时检查 东北石油大学本科生毕业设计 论文 8 第 3 章 博客系统需求分析 3 1 系统的可行性研究 可行性研究的目的是用最小的代价在尽可能短的时间内确定问题是否能够解 决 研究在当前的具体条件下 开发新系统是否具备必要的资源和其他条件 一 般情况下从以下几个方面研究系统的可行性 11 1 经济可行性 经济可行性研究主要进行成本效益分析 经过估算该图书借阅系统开发成本 本单位是可以接受的 并且本系统投入使用以后可以提高管理员的工作效率 方 便读者寻找需要借阅的图书信息 因此从提高工作效率而避免各种直接或间接的 经济损失角度来看 软件实际能够起到的作用会远远大于投入的开发费用 所以 此图书借阅管理信息系统的开发在经济上是可行的 2 技术可行性 技术上的可行性分析主要分析技术条件能否顺利完成开发工作 硬 软件能 否满足开发者的需要等 软件方面 图书借阅管理信息系统采用Microsoft Visual Studio和SQL Server 2000 数据库进行开发 由于SQL Server数据库具有灵活性 安全性和易用性等优点为数据库编程提供了良好的条件 因此 系统的软件开发 平台已成熟可行 硬件方面 科技飞速发展的今天 硬件更新的速度越来越快 容量越来越大 可靠性越来越高 价格越来越低 因此 在硬件方面完全可以满 足系统开发的需求 即图书借阅管理系统在技术方面是可行的 12 3 操作可行性 因为开发所采用的工具全是可视化工具 开发出的应用程序均是 面向对象 图形化界面 界面简单 操作容易 另外 软件的操作员大多已经会基本的 Windows操作 即使不会操作Windows 经过短期的培训也能熟练的使用本软件 所以此图书借阅管理信息系统在操作上也是可行的 4 开发环境的可行性 配置稍好的PC机 Windows XP 操作系统 IIS5 0 服务器 SQL Server 2000 数据库 一套完整的开发工具 从资源上说是容易实现的 综上所述 此系统开发目标已明确 在技术和经济等方面都可行 并且投入 少 见效快 因此系统的开发是完全可行的 东北石油大学本科生毕业设计 论文 9 3 2 系统需求分析 本系统是将现代化的计算机技术与博客服务技术相结合 因此应该按照博客 技术的服务流程设计完成 需要做到以下几点 1 操作简单 界面友好 完全控件式的页面布局 使得写博客的工作更简便 许多选项包括博客类别等只需要点击鼠标就可以完成 另外 跟踪出现的提示信 息也让用户随时清楚自己的操作情况 2 即时可见 对博客的处理 包括写入 修改 删除 将立即在主页的对应 栏目显示出来 达到 即时发布 即时见效 的功能 3 功能完善 包括常见网站的博客功能的各个方面 写日志 浏览 删除 修改 检索等各个方面 而且还能进行对注册用户的管理 4 动态管理 对系统数据库实行动态操作 能实现对数据库信息的动态查询 动态更新修改和动态录入数据 博客系统用例图如图 3 1 所示 图 3 1 博客系统用例图 管理博客内容 退 出 发表日志 用户登录 修改信息 查看日志 评论日志 东北石油大学本科生毕业设计 论文 10 3 3 总体流程分析 数据流图描绘系统的逻辑模型 图中没有任何具体的物理元素 只是描绘信 息在系统中流动和处理的情况 因为数据流图是逻辑系统的图形表示 即使不是 专业的计算机技术人员也容易理解 所以是极好的通信工具 此外 设计数据流 图只需考虑系统必须完成的基本逻辑功能 完全不需要考虑如何具体地实现这些 功能 所以它是软件设计很好的出发点 系统的用户主要是博客访问者和博客管理员 下面以博客前台展示系统中的 用户根据分类索引为例进行说明 本系统的数据流图如下图 3 2 所示 图 3 2 系统数据流图 3 4 系统详细流程分析 根据博客信息管理系统的特点 将其分为两大模块 前台用户浏览模块和后 台用户管理模块 前台用户浏览模块主要用于用户浏览日志信息 后台用户管理 模块主要用于博客主人对博客网站的管理 如日志管理 留言管理及评论管理等 前台用户浏览模块主要用于用户浏览日志信息 用户浏览日志有两种浏览方 式可以选择 一是直接点击日志标题链接进入日志显示页面浏览日志 二是点击 分类检索相同分类的日志 然后在该首页中选择所需的日志标题链接进入日志显 示页面浏览日志 浏览日志的同时用户可以查看别人对该日志的评论 然后用户 博主 2 1 日志修改 2 2 日志删除 2 3 日志搜索 4 1 发表评论 5 浏览相册 4 2 删除评论 3 1 修改分类 3 2 删除分类 1 1 录入日志 1 2 录入图片 1 3 录入音乐 1 4 录入个人 信 息 D数据库 用户 东北石油大学本科生毕业设计 论文 11 也可以对该日志发表自已的评论 博主进入后台管理平台 首先必需进行权限验证 防止未授权的用户非法登 录 若未通过验证 则显示出错提示 并跳转到登录页面 若通过验证 则进入 个人博客后台管理平台 博主可以浏览已发表的日志 并对其进行相应的操作如 修改日志和删除日志 可以查看日志的评论信息并对其进行回复或者删除操作 可以发表新的日志 可以新建日志分类 可以浏览个人博客的留言信息并对其进 行相应的操作如回复留言和删除留言 还可以对个人信息进行修改 博客系统平台的后台用户管理模块流程示意图如图 3 3 所示 图 3 3 后台用户管理模块流程示意图 开始 结束 出错提示 权限验证 分类管理评论管理日志管理 N Y 输入 东北石油大学本科生毕业设计 论文 12 第 4 章 博客系统总体设计 所谓系统设计 就是确定系统的具体实现方案 从数据流图出发设想完成系 统功能的若干个合理的方案 结构图是进行软件结构设计的一个有力工具 它是由模块组成的层次系统 一个方框代表一个模块 方框中注明模块的名字或主要功能 方框间的直线表示 模块的调用关系 采用模块化设计原理可以使程序结构清晰 使程序设计更加容 易 也使程序易读性好 因为程序错误通常局限于有关的模块以及它们之间的接 口程序中 所以模块化使程序容易测试和调试 因而有助于提高软件的可靠性 修改错误也只是局限于固定的几个模块中 所以模块化能够提高软件的可修改性 本系统就是采用模块化的设计思想来完成的 13 模块是数据说明 可执行语句等程序对象的集合 它单独命名并且可以通过 名字来调用 模块化就是把程序化分成若干个模块 每个模块完成一个子功能 把这些模块集合起来组成一个整体 可以完成指定的功能 解决具体的问题 采 用模块化原理可以使软件结构清晰 不仅容易设计 而且容易阅读和理解 此外 模块化使软件容易测试和调试 有利于提高软件的可靠性 因为程序错误往往局 限于单个模块中 一个模块出错 不容易影响其他模块 同时 一个模块的修改 只要它的接口不变 也不影响其他模块 这样 软件的测试和调试的复杂程度就 大大降低了 4 1 数据库设计 数据库是当前应用软件系统的重要组成部分 如何使基于数据库的应用系统 安全 可靠 高效的运行一直是软件开发技术研究的难题 所以本系统的数据库 设计基于以下几点来考虑 1 数据库规范化与非规范化的考虑 2 数据查询优化与索引的建立 3 存储过程与视图 4 1 1 数据库设计 E R 图 为了把用户的数据要求清晰明确地表达出来 通常要建立一个概念性的数据 模型 概念性数据模型是一种面向问题的数据模型 是按照用户的观点来对数据 东北石油大学本科生毕业设计 论文 13 和信息建模 描述了从用户角度看到的数据 反映了用户的现实环境 最常用的表示概念性数据模型的方法 是实体 联系方法 Entity Relationship Approach 这种方法用ER图描述现实世界中的实体 而不涉及这些 实体在系统中的实现方法 用这种方法表示的概念性数据模型又称为ER模型 ER模型中包含 实体 联系 和 属性 博客信息管理系统涉及的实体包括 1 用户 用户ID 用户名称 用户密码 2 分类 分类编号 分类名 分类显示顺序 3 日志 日志编号 日志标题 日志内容 分类编号 发表日期 评论编号 4 评论 评论编号 评论人 评论内容 发表日期 日志编号 综合本系统各子模块要实现的功能 通过前面对博客信息系统数据的分析可 以得到 用户表 分类表 日志表 日志评论表的数据库概念模型 E R图 用户E R图如图 4 1 所示 图 4 1 用户E R图 分类E R图如图 4 2 所示 图 4 2 日志类别E R图 日志E R图如图 4 3 所示 密码 ID 用户名 用户 显示顺序 分类名称 分类编号 分类 日志内容 分类编号 日志标题 发表日期 日志编号 日志 东北石油大学本科生毕业设计 论文 14 图 4 3 日志E R图 评论E R图如图 4 4 所示 图 4 4 评论E R图 4 1 2 系统数据表设计 系统管理员表 Moderator 在独立的一个数据库 Moderator 中 博客系统中的数据管理形式采用数据库 根据系统需要与数据规范化分为 用户表 UserInfo 聊天室表 ChatMessage 主要页面关键字表 PageKeywords 友情链接表 Links 最近访客表 Recent 留言版表 Message 留言评论表 MessageReply 日志分组表 DiaryGroup 日志表 Diary 日志评论表 DiaryReply 相册分组表 AlbumGroup 照片表 Phone 照片评论表 PhoneReply 音乐盒分组表 MusicGroup 歌曲表 Music 歌曲评论表 MusicReply 以下列举主要表结构 表 4 1 日志表 Diary 字段名类型主键说明关系 DiaryIDbigint 8 主键 自增日志ID 所 有用户的 DiaryTitlenvarchar 8 日志标题 DiaryContentnvarchar 4000 日志内容 DiaryTimedatetime 8 发表日志的时间 ReadNumbigint 8 被阅读次数 DiaryGroupIDbigint 8 日志类别ID关联日志分组ID 表 4 2 日志评论表 DiaryReply 字段名类型主键说明关系 DiaryReplyIDbigint 8 主键自增日志评论ID ReplyContentnvachar 4000 评论内容 评论内容 评论人 评论日期 评论编号日志编号 评论 东北石油大学本科生毕业设计 论文 15 ReplyTimedatetime 8 评论的时间 续表 4 2 DiaryIDbigint 8 这条评论所 属的日志ID 所属的日志ID UserInfoIDbigint 8 用户ID关联用户ID 表 4 3 用户表 UserInfo 字段名类型主键说明关系 UserInfoIDbigint 8 主键 自增用户ID UserNamevarchar 16 用户名 UserPasswordvarchar 16 密码 UserEmailvarchar 100 邮箱 Hypocorismnvarchar 10 昵称 FullNamenvarchar 4 真实姓名 Questionnvarchar 50 密码保护问题 Solutionnvarchar 50 密码保护答案 RegisterTimedatetime 8 注册时间 UserWebSiteNamenvarchar 10 网站的名字 UserSignnvarchar 200 个性签名 UserHostTalknvarchar 200 主人寄语 HeadImgIDbigint 8 用户头像ID关联用户头像 ID IsPassbit 1 是否通过 默认 0 为最新用户 IsDisablebit 1 是否被封禁 0 为否 Sexbit 1 性别 0 为男 1 为女 表 4 4 日志分组表 DiaryGroup 字段名类型主键说明关系 DiaryGroupIDbigint 8 主键 自增日志分组ID 所有用户的 DiaryGroupNamenvarchar 50 日志分组名 东北石油大学本科生毕业设计 论文 16 GroupInfoIDbigint 8 日志模块ID关联日志模块ID 表 4 5 页面关键字表 Moderator 字段名类型主键说明关系 KeyWordIDbigint 8 主键 自增关键字ID KeyWordNamevarchar 50 管理员名 KeyWordDiaryvarchar 50 包含关键字的 文章ID 以逗号 分割 日志表ID 表 4 6 相册分组表 GroupInfo 字段名类型主键说明关系 PhotoIDbigint 8 主键 自增 PhotoNamevarchar 16 照片名 PhotoPasswordvarchar 16 相册密码 表 4 7 聊天室表 ChatMessage 字段名类型主键说明关系 ChatMessageIDbigint 8 主键自增聊天信息的ID ChatUserNamenvarchar 10 发信息的 用户名称 ChatMessagenvarchar 4000 信息内容 ChatMessageTim e datetime 8 发信息时间 UserInfoIDbigint 8 关联发消息 用户的ID 关联用户ID 4 2 功能模块设计 功能模块图是软件工程过程中的一个重要环节 它将显示出工程所要实现的 各种功能 并分类 然后软件工程师根据功能模块图来具体实现这些功能 根据 需求分析 本系统主要分为前台的信息展示 用户评论以及后台博主的信息管理 功能 主要功能模块如下 1 前台模块 东北石油大学本科生毕业设计 论文 17 博客展示 在网站的首页面提供一些博客网站的相关链接 用户可以直接单 击链接访问相应的博客网站 日志展示 主要包括最新日志展示和日志列表展示 最新的日志从日志表中 读取出来 并将标题显示在最新日志栏目中 日志列表展示会将日志表中的日志 以列表的形式显示在页面上 每页显示 10 条日志 评论展示 在网站的首页面的相应栏目中 将最新的用户评论展示出来 点 击链接可以直接进入评论以及评论的日志查看 分类展示 日志的分类信息以列表的形式展示在相应的栏目中 用户单击某 个类别链接可以直接进入相应的类别板块 再选择某篇日志浏览 博主登录 为博主提供的登录入口 登录后 博主可以进行博客网站的管理 工作 前台模块功能结构如图 4 5 所示 图 4 5 博客系统前台功能模块图 2 后台模块 个人信息管理 在用户登录成功以后 博主可以按个人的资料进行资料设置 可以随时更改信息 日志管理 在此功能模块中 博主可以发布日志 可以随时修改日志 删除 日志 评论管理 在此模块中 博主可以回复他人的评论 设置评论回复的权限 删除自己不喜欢的评论 分类管理 博主可以对日志 相册 音乐进行分类管理 可以添加 修改和 删除分类 后台模块功能结构如图 4 6 所示 博主登录博客展示 博客系统前台 分类展示 分 类 列 表 发 表 评 论 最 新 评 论 日 志 列 表 最 新 日 志 日志展示评论展示 东北石油大学本科生毕业设计 论文 18 图 4 6 博客系统后台功能模块图 博客系统后台 分类管理 评论管理 日志管理 个人信息管理 添 加 分 类 删 除 分 类 修 改 分 类 删 除 评 论 回 复 评 论 删 除 日 志 修 改 日 志 发 表 日 志 登 录 修 改 信 息 东北石油大学本科生毕业设计 论文 19 第 5 章 博客系统详细设计 详细设计又称过程设计 在概要设计阶段 已经确定了软件系统的总体结构 给出系统中各个组成模块的功能和模块间的联系 详细设计就是要在上述结果的 基础上 考虑 怎样实现 这个软件系统 直到对系统中的每个模块给出足够详 细的过程性描述 详细设计的任务 1 为每个模块确定采用的算法 选择某种适当的工具表达算法的过程 写出 模块的详细设计过程性描述 2 确定每个模块使用的数据结构 3 确定模块接口的细节 包括对系统外部和用户界面 对系统内部其他模块 的接口 以及模块输入数据 输出数据及局部数据的全部细节 详细设计的的原则 1 由于详细设计的蓝图是可阅读的 所以模块的逻辑描述要清晰易读 正确 可靠 2 采用结构化设计方法 改善控制结构 降低程序的复杂程度 从而提高程 序的可读性 可测试性 可维护性 结构化设计的基本内容归纳如下 确保程序 结构的独立性 使用单入口 单出口的控制结构 确保程序的静态结构与动态执 行情况相一致 保证程序易理解 程序的控制结构一般采用顺序 选择 循环三种结构构成 以确保结构简单 用自顶向下逐步求情方法完成程序设计 结构化程序设计的缺点是存储容量和运 行时间增加 10 20 但易读易维护型好 经典的控制结构为顺序 分支和循环 3 选择恰当描述工具来描述各模块算法 5 1 开发环境部署 5 1 1 IIS 的配置 1 依次选择开始 设置 控制面板 管理工具 Internet信息服务 IIS 管理员选择 弹出 Internet信息服务 IIS 管理器 选项 弹出 Internet 信息服务 IIS 管 理器 窗口 2 选中 默认网站 节点 单击右键 选择 属性 东北石油大学本科生毕业设计 论文 20 3 弹出 默认网站属性 对话框 然后单击 网站 选项卡 在 IP地址 下拉列表中选择本机IP地址 4 单击 主目录 选项卡 单击 浏览 按钮 弹出 浏览文件夹 对话框 选择 BookBorrow 的网站路径 单击 确定 按钮 此时完成了IIS配置 5 1 2 启动 Microsoft Visual studio 2005 选择开始 所有程序 Microsoft Visual studio 2005 单击 打开主页 文件 打开 网 站 本地IIS BookBorrow 此时在Visual studio 2005 视图 解决方案资源管理器 然后 在解决方案资源管理其中添加此系统需要的Web窗体 公共类 数据库等 对此 系统进行详细设计 5 1 3 启动 Microsoft SQL Server 2000 数据库 选择开始 所有程序 Microsoft SQL Server 2000 企业管理器 数据库 右键 新建 数据库 名称 BookBorrow 右键 新建表 对此系统需要的数据进行设计 完成了以上的准备工作 下面我们就针此系统的设计模块 依次介绍实现此 系统的详细设计 5 2 连接数据库 在动态网站中 调用数据库中的数据是十分频繁的 为了避免编写重复的代 码 编写一个数据库连接文件是非常重要的 因此 在开发此系统前我们首先设 计了一个公共数据库操作类 此数据库操作类用来完成数据库的连接操作 以及 数据库的查询 添加 删除和修改操作 将这几种操作编写到一个公共类里 将 此类命名为dataOperate cs dataOperate cs类中一共定义了以下几个方法 createCon 方法用来连接数据库 此方法的返回类型 SqlConnection execSQL string sql 方法用来查找数据是否存在 此方法返回一个 布尔型值 用来表示添加 插入和删除数据是否成功 执行成功返回true 否则 返回false 调用此方法时应传入一个String类型的参数 此参数表示要执行的SQL 语句 seleSQL string sql 方法用来查找数据是否存在 此方法返回一个布尔型值 用来表示是否查找大数据 如查找到数据则返回true 否则返回false 调用此方法 时应传入一个string类型的参数 此参数表示所要执行的SQL语句 getData string sql string table 方法用来查找返回多行数据 此方法返回一个DataSet数据集 在 调用此方法时应传入两个string类型的参数 第一个参数表示要执行的SQL语句 第二个参数表示表名 getRow string sql 方法用来查找并返回一行数据 此方 法返回一个SqlCommand对象 在调用此方法时应传入一个string类型的参数 此 东北石油大学本科生毕业设计 论文 21 参数表示所要执行的SQL语句 5 3 页面样式设计与实现 CSS Cascading Style Sheet 可译为 层叠样式表 或 级联样式表 是一 组格式设置规则 用于控制Web页面的外观 通过使用CSS样式设置页面的格式 可将页面的内容与表现形式分离 页面内容存放在HTML文档中 而用于定义表 现形式的CSS规则则存放在另一个文件中或HTML文档的某一部分 通常为文件 头部分 将内容与表现形式分离 不仅可使维护站点的外观更加容易 而且还可 以使HTML文档代码更加简练 缩短浏览器的加载时间 目前 很多Web网站都使用CSS样式表来控制页面的样式 在博客系统中存 在很多相同或相似的元素 这些元素可能是页面的标题 可能是页面的版权声明 也可能是文章的列表或是登录信息框 需要寻找一种方式在整个系统中共享 而 不需在变化时修改所有的页面 所以就采用了样式文件进行管理以及用户自定义 组件 以网站的信息列表的显示为例 在网页中是以表格形式来展示的 关于表 格的样式 通过一个CSS规则来控制 这样在每个页面当中导入该样式 则使得 所有的页面拥有相同的风格 表格的CSS规则核心代码如下 charset utf 8 table text align center 设置表格文本水平居中 vertical align middle 设置表格文本垂直居中 width 900px 设置表格宽度 font family 宋体 设置表格字体 font size 12px 设置表格字号 color 33F 设置表格文字颜色 table td border 1px 03F dashed 设置表格和单元格边框样式 宽度 颜色 其中样式是必须的属性值 border collapse collapse 设置是否将表格边框折叠为单一边框 padding 15px 控制表格内容与边框的距离 必须放在td中 将CSS样式应用到网页上使用的是标签的方式 直接将文件的路径添 加在herf属性中 在相应的html页面的标签之间添加如下代码 css2 东北石油大学本科生毕业设计 论文 22 5 4 系统前台功能详细设计 软件的分析和设计是软件工程中最重要的环节 详细设计主要包括系统的分 析与设计 详细设计阶段的根本任务是确定如何具体地实现目标系统 也就是说 经过这个阶段的分析设计工作后 应该写出对系统的精确描述 从而可以在编辑 代码阶段可以把这个描述直接翻译成用某种程序设计语言书写的程序 此阶段要 设计出程序的具体流程的实现过程 然后就可以根据这个流程实现过程写出实际 的程序代码 因此 详细设计的最终结果完成决定了最终程序代码的质量 除了 应该保证程序的安全性和可靠性之外 同时也应该保证编写的程序可读性好 尽 量减少冗余代码的出现 而且代码应具备良好的复用性 便于以后的修改和维护 这一点是详细设计的最为重要的目标与任务 5 4 1 登录页面 系统的页面按照常规的Web页面进行设计 设计的原则是页面友好 易于操 作 容易上手 尽可能的贴切用户实际 本模块的功能是用户登录与注册 当用 户填写正确的用户名并且同时输入正确的密码之后 就会进入博客系统 同时也 可以选择是否记住我的登录状态 当输入的密码错误也会连接忘记密码 所有的网络用户都可以进入该首页进行登录 浏览等相关的操作 在页面的 上方是博客系统的导航列表 图中显示的导航条包括登录 日志 在页面的左侧 用户可以浏览日志大致内容 博客的右方有公告 分类列表 最近评论等 博客系统登陆图如图 5 1 所示 东北石油大学本科生毕业设计 论文

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论