大家园社区网站建设Word文档下载推荐.docx
- 文档编号:16781236
- 上传时间:2022-11-26
- 格式:DOCX
- 页数:35
- 大小:658.41KB
大家园社区网站建设Word文档下载推荐.docx
《大家园社区网站建设Word文档下载推荐.docx》由会员分享,可在线阅读,更多相关《大家园社区网站建设Word文档下载推荐.docx(35页珍藏版)》请在冰豆网上搜索。
3.1性能分析10
3.1.1加载数据效率要求10
3.1.2界面风格要求10
3.2运行环境10
3.2.1硬件环境10
3.2.2软件环境10
3.3业务需求分析10
3.4数据流图分析11
3.4.1顶层数据流图11
3.4.20层数据流图12
3.4.31层数据流图13
3.5数据字典分析15
3.5.1数据流条目15
3.5.2文件条目15
第4章总体设计17
4.1概述17
4.2数据库设计18
4.2.1数据关系E-R图18
4.2.2数据库逻辑设计21
第5章详细设计23
5.1主页——用户浏览页面23
5.1.1用户模块23
5.1.2内容浏览模块24
5.1.3上传文件模块25
5.1.4留言模块26
5.1.5评论模块27
5.2管理中心——后台管理员访问页面28
5.2.1注册会员管理模块29
5.2.2类别管理模块30
5.2.3上传文件管理模块31
5.2.4图片信息管理模块32
5.2.5留言/评论管理模块33
结论34
参考文献35
致谢36
引言
喜欢浏览图片的网友应该都去过各种图片网站吧,是不是已经习惯传统的图片网站的提供方式了呢?
当你在网站上四处搜索自己的想要的图片却一无所获时,是不是挫折感油然而生?
我也曾经抱怨过,为什么这网站的图片总那么不合我胃口啊?
如果能由所有用户一起提供图片资源的虚拟社区,那不是丰富多了吗?
在此次毕业设计中,我就以此为题,展开设计。
很显然,传统的网站设计,已经难以应付互联网的高速发展,web2.0也自然在互联网的高速发展下应运而生。
告别传统网友被动的浏览网页,管理员掌管网站一切的时代,如今,网友们既是网站的消费者(浏览者),也是网站内容的制造者。
伴随blog,wiki等web2.0网站的不断诞生,web2.0已经正是走进我们的生活,倘若再坚持传统网站的设计模式,那就显的落伍了。
尤其是AJAX技术在web2.0网站的大量应用,极大的改善了用户体验,网页浏览变得和桌面软件应用一样方便。
什么是AJAX?
AJAX即异步通信的Javascript+XML,它使得页面在不用刷新得情况下即可与服务器通讯,返回结果,改善了我们等待页面刷新的痛苦,使得客户端有更丰富的表现力,在本次毕业设计中,我适当的应用了这门技术。
好的,共同参与构建网站,丰富网站,改善用户体验就是本此毕业设计网站的主要特点。
好东西就要大家一起分享,想想您是愿意去传统的MP3网站下载MP3,还是更愿意使用Kugoo呢?
答案是明显的。
大家园社区网站的设计宗旨就是以虚拟社区的形式增加网站和网友之间的互动,全民参与网站建设,当然最重要的是在这里可以找到一切我们想要的。
第1章系统运行方案
1.1理论分析
大家园社区网站融入web2.0设计思想,以用户提供全部图片资源,管理员只负责将其发布到对应类别。
用户除了可浏览和下载图片,还可发表评论,留言等,用户和管理员都有各自的权限划分,可执行对应的操作。
由于网站与用户,用户与用户交互性强,所以定义为网上虚拟社区。
网站主体采用执行效率极高的PHP开发,使用AJAX技术辅助,数据库方面采用与PHP之最佳组合MYSQL,web服务器和操作系统则采用Apache和Linux,这就是所谓的LAMP建站方案,由于LAMP均为开源软件,且效率高于微软平台,所以该套方案已得到极大推广和普及,所以本毕业设计采用基于LAMP的平台开发。
1.2开发工具选用
正如上面陈述的,本系统之所以采用PHP作为服务器端脚本语言是因为PHP执行效率很高,程序运行速度快,且易于上手,除错方便。
最重要的是它是免费的。
相对与ASP而言,它的效率更高,且ASP部分组件均要收费(如上传组件)。
而JSP配置和除错过于复杂,故采用PHP。
数据库方面由于都是开源项目,PHP内置支持MYSQL,且MYSQL是正规的关系数据库,且占用资源很少,执行效率很高,当然,它也是免费的。
至于其他数据库,ACCESS是桌面型个人数据库,SQLSERVER不方便在linux下于PHP搭配使用,ORACLE是商业大型数据库,所以不予采用。
数据库采用PHPMYADMIN执行网络操作,网站界面框架采用Dreameaver8,在windowsxp下开发,PHP,javascript程序采用ZendStudio/editplus(windows平台)和gedit(linux平台)开发,调试环境:
linux。
此外还用到photoshop等图像处理软件制作图片界面。
1.2.1关于PHP
PHP是HypertextPreprocessor的简称,是一种HTML内嵌式编程语言。
它的语法混合了C、Java和Perl优点及它的新语法,比CGI、ASP或者Perl更快速地执行动态网页。
总的来说,它有以下几个方面的优点:
1.支持的数据库非常广泛,大到SYBASE、MySQL、ORACLE,小到Access都支持。
2.跨平台性非常好,支持Windows系列操作系统,LINUX操作系统和UNIX操作系统。
同时支持多种Web服务器。
3.开源软件,升级更新速度非常快。
4.免费软件,无须花钱购买。
同时与Linux、Apache、MySQL构成性价比最高的Web系统。
5.PHP5.0有成熟的面向对象体系,能够适应基本的面向对象要求,适合开发大型项目。
1.2.2关于MYSQL
MYSQL是基于SQL的,完全网络化的跨平台关系型数据库系统,同时是具有客户机/服务器体系结构的分布式数据库管理系统。
它具有功能强,使用简便,管理方便,运行速度快,安全可靠性高等优点。
支持多种语言编写访问数据库的程序。
1.2.3关于LAMP平台
LAMP即操作系统:
LINUX,web服务器:
APACHE,数据库:
MYSQL,服务器端脚本:
PHP的第一个字母组合。
LAMP通过几年的迅速发展,目前已经在世界范围内走出草根阶层,成为Web服务器的事实标准。
这些开源组件的兼容性不断完善,“黄金组合”应用情形变得更加普便。
伴随IT业的发展,互联网和B/S软件的盛行,LAMP构成了一个强大的Web应用程序平台。
LAMP每一个组件都是FreeorOpenSourceSoftware,免费或者开源软件。
这种免费和开源的方式对于全世界用户都具有很强的吸引力,无论企业和个人开发者,无需再付费购买“专业”的商用软件。
特别是在互联网方面,不需要为软件的发布支付任何许可证费就可以开发和应用基于LAMP的工程。
同时开源社区的潜力更在于资源共享,上百万的志愿开发者为开源软件贡献自己的力量,保证了LAMP技术的不断进步和升级。
开源的特性也使企业和开发人员可以随意的修改源程序为我所用,提升专有软件或者商业软件的限制中所没有的灵活性,放大了项目的衍生性。
业内人士预计,在服务器平台及软件方面,LAMP市场占有率将在未来两年内取得更高的市场分额。
1.3B/S体系与MVC设计思路
B/S结构从逻辑上讲分为四个层次:
客户机、Web服务器、应用服务器、数据库服务器。
客户机主要负责人机交互;
Web服务器主要负责对客户端应用程序的集中管理;
应用服务器主要负责应用逻辑的集中管理,它也可以根据其处理的具体业务不同而分为多个;
数据库服务器则主要负责数据的存储和组织、数据库的分布式管理、数据库的备份和同步等等。
在B/S体系结构系统中,用户通过浏览器向分布在网络上的许多服务器发出请求,服务器对浏览器的请求进行处理,将用户所需信息返回到浏览器。
B/S结构简化了客户机的工作,客户机上只需配置少量的客户端软件。
服务器将担负更多的工作,对数据库的访问和应用程序的执行将在服务器上完成。
浏览器发出请求,而其余如数据请求、加工、结果返回以及动态网页生成等工作全部由WebServer完成。
实际上B/S体系结构是把C/S结构的事务处理逻辑模块从客户机的任务中分离出来,由Web服务器单独组成一层来负担其任务,这样客户机的压力减轻了,把负荷分配给了Web服务器。
MVC英文即Model-View–Controller,即把一个应用的输入、处理、输出流程按照Model,View,Controller的方式进行分离,这样一个应用层被分为三个层—模型层,视图层、控制层。
视图(View)代表用户交互界面,对于Web来说,可以概括为HTML界面,但也有可能为XHTML、XML、Applet和Flash等。
随着应用的复杂性和规模性的提高,界面的处理也变得具有挑战性,一个应用可能有很多不同的视图,MVC设计模式对于视图的处理仅限于视图上数据的采集和处理,以及用户的请求,而不包括在视图上的业务流程的处理。
业务流程的处理交予模型(Model)处理。
比如一个订单的视图只接受来自模型的数据并显示给用户,以及将用户界面的输入数据和请求传递给Controller和Model。
模型(Model)就是业务流程和状态的处理以及业务规则的制定。
业务流程的处理过程对其他层来说暗箱操作,模型接受视图请求的数据,并返回最终的处理结果。
业务模型的设计可以说是MVC最主要的核心。
MVC设计模型告诉我们,把应用的模型按照一定的规划抽取出来,抽取的层次很重要,这也是判断开发人员是否优秀的设计依据。
抽象与具体不能隔得太远,也不能太近。
MVC并没有提供模型的设计方法,而只告诉你应该组织管理这些模型,以便于模型的重构和提高重用性。
业务模型还有一个很重要的模型那就是数据模型。
数据模型主要是指实体对象的数据保存。
比如将一张订单保存到数据库中,从数据库获取订单。
我们可以将这个模型单独列出,所有有关的数据库的操作只限在该模型中。
控制(Controller)可以理解为从用户接受请求,将模型与视图匹配在一起,共同完成用户的请求,划分控制层的作用很明显,它清楚地告诉开发者,它仅是一个分发器,选择什么样的模型,选择什么样的视图,可以完成什么样的用户请求。
控制层不作任何的数据处理。
例如,用户点击一个链接,控制层接受请求后,并不处理业务信息,它只把用户的信息传递给模型,告诉模型做什么,把符合要求的视图返回给用户。
因此,一个模型可能对应多个视图,一个视图可能对应多个模型。
总之,模型、视图与控制器的分离,使得一个模型可以具有多个显示视图。
如果用户通过某个视图的控制器改变了模型的数据,所有其他依赖于这些数据的视图都反映到这些变化。
1.4开发方法
原型法(Prototyping)是20世纪80年代随着计算机软件技术的发展,特别是在关系数据库系统(RelationalDataBaseSystem,RDBS)、第四代程序生成语言(4thGenerationLanguage,4GL)和各种系统开发生成环境产生的基础上,提出的一种从设计思想、工具、手段都全新的系统开发方法。
它扬弃了那种一步步周密细致地调查分析,然后逐步整理出文字档案,最后才能让用户看到结果的繁琐作法。
第2章可行性分析
2.1市场分析
当今WEB2.0的趋势,在博克,WIKI,播客流行的今天,传统互联网应用显然已经捉襟见肘,按着WEB2.0的模式,由广大网友上传资源,管理员只是对其来整理发布,和对会员的管理,不但大大增加网站资源,节省网站管理,还能极大程度满足大家的喜好,可谓是老树开新花,是非常有意义的。
2.2经济分析
由于系统所需要的软件设备都可以通过设计解决,因此经济方面顾只考虑硬件方面设施。
硬件设施方面有两种解决方案。
方法1:
采用独立服务器,光纤的接入,或者可以选择电信的主机托管业务。
方法2:
采用虚拟主机业务,费用的高低由购买的空间大小所决定。
方法1的成本相对高,方法2的成本相对低,但是方法2可能对网站访问的同时在线人数等有一些影响。
网站建立完成后,随着访问人数增加到一定程度后,可以考虑收费,而收费的手段主要以空间的大小为依据。
用户申请时可以得到一个免费空间,但是随着用户功能的增加和文件的增多,当可用空间不足时,用户可以考虑向网站购买空间。
以网站访问人数为20万人,其中有1万人购买空间平均为10M,而1M空间收取2元/年。
网站即可有20万元的收入,该笔收入是相当可观的。
2.3技术分析
在选择程序语言上,我们选择目前最为流行的开源脚本开发语言PHP,由于PHP效率高,且支持面向对象编程,适合大型项目的开发,相对于asp,效率远远高于前者,相对于jsp的复杂配置,php显得十分简单,比较.net,PHP可以支持多种操作系统平台,安全性不言而喻。
数据库方面采用小巧且功能强大的mysql数据库,系统平台采用linux,更安全,更高效,配合apache服务器,能最大效率的发挥系统的功能。
网站使用ajax技术大大提高用户体验。
综上所述,结合实际需要,本系统采用了LAMP建站方案,融入了web2.0设计思想,充分进行了其市场分析、经济分析、技术分析之后,得出结论,该方案可行。
第3章需求分析
3.1性能分析
3.1.1加载数据效率要求
服务器部分:
本网站的访问不限制时间,必须提供24小时正常访问。
查询服务部分:
用户通过上网从搜索信息到返回不超过5秒钟。
数据管理部分:
提交一笔录入到结果返回不超过5秒钟。
发布信息时应先验证条件是否达到,不能出现死循环无限等待。
3.1.2界面风格要求
网站整体以活泼色调为主,主要为橙色,绿色和白色为主,辅助红色给人清新,舒适的感觉,配合CSS和PS设计,在1024×
768分辨率下达到最佳显示效果,界面简洁清爽,不会过于复杂。
3.2运行环境
3.2.1硬件环境
本次演示环境客户机和服务器为同一主机,服务器配置:
INTEL2.66GCPU,内存256M。
3.2.2软件环境
操作系统:
FreeBSD6.3服务器:
apache2.0数据库:
mysql5.0.45PHP解释器版本:
5.2.4,数据库管理工具:
phpmyadmin2.11.0。
3.3业务需求分析
根据实际情况本虚拟社区要求具有以下功能:
1.要求有对主题进行分类浏览查看功能。
2.提供各分类信息的查询功能。
3.要求有留言板,方便用户提出意见和咨询问题。
4.浏览者有对主题发表评论的功能。
5.要求提供管理员后台管理入口。
6.只有超级管理员才能对注册会员进行资料修改,删除会员等操作。
7.只有超级管理员才能对类别进行管理。
8.要求管理员有对上传文件管理功能。
9.要求管理员有对图片信息管理功能。
10.要求管理员有对留言/评论管理功能。
3.4数据流图分析
3.4.1顶层数据流图
图3-1顶层数据流图
3.4.20层数据流图
图3-20层数据流图
3.4.31层数据流图
图3-3用户系统数据流图
图3-4留言系统数据流图
图3-5评论系统数据流图
图3-6上传系统数据流图
图3-7后台管理系统数据流图
3.5数据字典分析
3.5.1数据流条目
浏览请求=[浏览评论|浏览留言|浏览图片]
登陆请求=[用户名+密码]|[用户名+密码+验证码]
结果页面=[评论信息|留言信息|图片信息|用户信息|日志信息]
主界面={评论信息+留言信息+图片信息+[用户信息|日志信息]}
浏览留言请求={浏览留言}
浏览评论请求={浏览评论}
留言请求={留言信息}
评论请求={评论信息}
上传表单={图片信息}
注册表单=[用户名+密码+注册时间]|[用户名+密码+注册时间+提示问题+问题答案]
后台管理请求=[栏目增/删|日志增/删|评论增/删|留言增/删|图片增/删|用户增/删]
栏目增/删表单=[栏目名称+添加者+添加日期]
日志增/删表单=[登录IP+登录帐号+登录时间]
评论增/删表单=[评论内容+发布人+发布日期]
留言增/删表单=[留言内容+回复内容+留言者]
图片增/删表单=[信息内容+发布日期+上传者+所属类别+信息标题]
用户增/删表单=[用户名+用户密码+注册日期+找回密码问题+找回密码答案]
当前日期=[当前时间]
3.5.2文件条目
栏目文件=[栏目ID+父栏目ID+栏目名称+添加者+添加日期]
日志文件=[日志ID+登录IP+登录帐号+登录时间]
评论文件=[评论ID+评论内容+发布人+发布日期+所属信息ID]
留言文件=[留言ID+留言内容+是否回复0为未回1为已回+回复内容+留言者]
图片信息文件=[信息ID+信息内容+发布日期+上传者+发布管理员+所属类别+信息标题+信息类型0为普通1为精华+点击数]
用户文件=[用户ID+用户名+用户密码+注册日期+用户等级+用户类型1为普通2为VIP+找回密码问题+找回密码答案]
上传管理文件=[上传文件ID+文件名+浏览路径+保存路径+上传日期+上传者+状态0为未通过1为通过]
第4章总体设计
4.1概述
从前面需求分析可以看出,系统功能庞杂,主要分为前台浏览器(B/S)信息发布和数据查询。
从使用和操作的功能上分,有四种用户:
普通客户(浏览器浏览、查询);
注册用户(浏览和自身数据管理),VIP,系统管理员。
为便于整个系统组织管理,把各个相对独立的数据或功能组织到整个大系统中来,我们把各个相对独立的功能完全独立设计,编译成独立的目标(功能)模块(singleExecutable),各功能模块最后被集成到一个称为虚拟桌面的控制台模块中。
相应地将系统结构分为一个控制台程序和七个用户模块,各用户模块又分为若干各子模块。
对应于每一个用户模块,几乎都有录入、查询、修改、删除、查看详细资料这几个功能。
整个业务流程就是由这几种基本功能实现的。
在这里每个模块都要用到的功能没必要在每个子模块里重复阐述,在每个子模块里只列出区别于其它子模块的功能实现。
如下图为本系统的功能模块图。
图4-1系统功能模块图
4.2数据库设计
4.2.1数据关系E-R图
根据上面的需求分析和功能模块图,可以得出本社区系统数据库大致包括7张数据表,分别存放相应子功能的数据信息,其中“用户信息”是关键的表,用于存放社区用户的一些基本信息和权限信息,那么这7个实体以及完整E-R图分别如下几个图如示:
图4-2栏目实体图
栏目实体用于描述前台将要显示的栏目,它包括栏目ID、栏目名称、添加者、父栏目ID、添加日期,在后台管理中可对其值详细设置,方便发布。
有下划线的属性为实体的码。
图4-3评论实体图
评论实体用于描述用户对本系统展示的图片进行的评论包括评论内容、发布人、所属图片ID以及发布日期。
图4-4日志实体图
日志实体用于记录访问者的登录帐号、登录IP和登录时间。
图4-5图片实体图
图片实体用于描述用户上传的图片信息,该实体包括信息ID、信息内容、所属类别、信息标题、点击数等等。
图4-6上传文件实体图
上传文件实体用于描述用户的上传文件具体信息,该实体包括文件名、浏览路径、保存路径、上传日期、上传者等等。
图4-7用户实体图
用户实体用于描述注册用户的具体信息,用户实体为本系统中的核心实体,包括用户名、用户密码、用户类型、用户等级等等。
图4-8留言实体图
留言实体用于记录访问者到低需要哪些类型的图片以及对本站有用的建议,该实体包括信息ID、信息内容、所属类别、信息标题、点击数等等。
注意该实体与评论实体有所不同,评论实体只是针对某一张图的评价。
综合以上七个实体加上对应的关系,可得出以下总E-R图。
图中省略了各个实体的属性描述,因为在以上各个实体图中都已具体画出,所以为了美观和节约篇幅就没重复画了。
图4-9数据关系E-R图
4.2.2数据库逻辑设计
根据以上概念结构设计的结果,进一步地对各个实体或联系属性的类型、大小、约束、默认值等的分析之后完成逻辑结构设计,如以下几个表所示。
表4-1djy_columninfo栏目分类表
Columnid
int(4)
主键非空
栏目ID
columnfatherid
非空
父栏目ID
Columnname
varchar(100)
栏目名称
Columnadder
varchar(50)
添加者
columninputdate
Date
添加日期
表4-2djy_fourm评论表
d_id
int(11)
评论ID
d_comment
Longtext
评论内容
d_user
发布人
d_date
发布日期
d_picid
Bigint
所属信息ID
表4-3djy_log日志表
Logid
日志ID
Logip
登录IP
Logadmin
登录帐号
Logtime
Datetime
登录时间
表4-4djy_picinfo图片信息表
p_id
bigint(8)
信息ID
p_info
信息内容
p_d
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 家园 社区 网站 建设