基于JSP的个人博客系统设计与实现【毕业论文+文献综述+任务书+开题报告】.doc

上传人:文初 文档编号:45304 上传时间:2018-05-14 格式:DOC 页数:63 大小:677.83KB
下载 相关 举报
基于JSP的个人博客系统设计与实现【毕业论文+文献综述+任务书+开题报告】.doc_第1页
第1页 / 共63页
基于JSP的个人博客系统设计与实现【毕业论文+文献综述+任务书+开题报告】.doc_第2页
第2页 / 共63页
基于JSP的个人博客系统设计与实现【毕业论文+文献综述+任务书+开题报告】.doc_第3页
第3页 / 共63页
基于JSP的个人博客系统设计与实现【毕业论文+文献综述+任务书+开题报告】.doc_第4页
第4页 / 共63页
基于JSP的个人博客系统设计与实现【毕业论文+文献综述+任务书+开题报告】.doc_第5页
第5页 / 共63页
点击查看更多>>
资源描述

1、本科毕业设计论文届论文题目基于JSP的个人博客系统设计与实现所在学院专业班级信息管理与信息系统学生姓名学号指导教师职称完成日期年月日诚信声明我声明,所呈交的论文设计是本人在老师指导下进行的研究工作及取得的研究成果。据我查证,除了文中特别加以标注和致谢的地方外,论文设计中不包含其他人已经发表或撰写过的研究成果,也不包含为获得或其他教育机构的学位或证书而使用过的材料。我承诺,论文设计中的所有内容均真实、可信。论文设计作者签名签名日期年月授权声明学校有权保留送交论文(设计)的原件,允许论文(设计)被查阅和借阅,学校可以公布论文(设计)的全部或部分内容,可以影印、缩印或其他复制手段保存论文(设计),学

2、校必须严格按照授权对论文设计进行处理,不得超越授权对论文(设计)进行任意处置。论文设计作者签名签名日期年月日基于JSP的个人博客系统设计与实现摘要随着计算机网络的高速发展,博客迅速崛起,博客系统成为了潮流风头的网络新兴文化系统。课题的主要内容便是基于JSP的个人博客系统的设计与实现。系统的前台用户操作模块实现用户查看博客文章、查看评论、评论文章等操作,而后台博主操作模块则是博主登陆、解决用户文章管理、文章类别管理、相册管理、留言管理等功能问题。系统采用JSP技术实现个人博客系统的设计与实现,搭建“MYECLIPSEDREAMWEAVER”开发平台和“JAVABEANSSERVLET”的开发技术

3、结构,使用“MYSQLNAVICAT”数据库工具,并应用CSS进行系统美化,采用CKEDITOR进行博客系统的文章编辑。关键词博客;博客系统;JSP技术;MYECLIPSEDESIGNANDIMPLEMENTATIONOFPERSONALBLOGSYSTEMBASEDONJSPTECHNOLOGYABSTRACTNOWADAYS,BLOGSRISERAPIDLYASCOMPUTERNETWORKSDEVELOPSOFASTTHENBLOGSYSTEMHASBECOMEANEWCULTURALTRENDOFTHELIMELIGHTOFNETWORKSYSTEMSTHEMAINTOPICOFTHI

4、SARTICLEISABOUTTHEDESIGNANDIMPLEMENTATIONOFPERSONALBLOGSYSTEMBASEDONJSPTECHNOLOGYINTHISSYSTEM,THEOPERATIONMODULEFORUSERINFRONTENDIMPLEMENTSUCHOPERATIONSLIKEVIEWINGBLOGPOST,VIEWINGCOMMENTS,COMMENTINGARTICLESANDSOON,WHILETHEOPTIONALMODULEFORBLOGGERINBACKENDISUSEDTOLOGIN,SOLVEARTICLEMANAGEMENT,ARTICLEC

5、ATEGORYMANAGEMENT,PHOTOSMANAGEMENT,MESSAGEMANAGEMENTANDOTHERFUNCTIONALPROBLEMSTHISSYSTEMUSESJSPTECHNOLOGYTOACHIEVEDESIGNANDIMPLEMENTOFTHEPERSONALBLOGSYSTEM,ANDBUILD“MYECLIPSEDREAMWEAVER“DEVELOPMENTPLATFORMAND“JAVABEANSSERVLET“THEDEVELOPMENTOFTECHNICALSTRUCTUREITUSES“MYSQLNAVICAT“DATABASETOOLSITUSESC

6、SSSCRIPTSTOLANDSCAPINGAPPLICATIONSYSTEMSITUSESCKEDITORTOEDITTHEBLOGPOSTKEYWORDSWEBLOG,BLOGSYSTEM,JSPTECHNOLOGY,MYECLIPSE目录1绪论111课题研究的背景、意义1111历史背景1112研究现状1113意义312课题的研究内容313课题的研究方法32系统分析521需求分析5211需求定义5212数据流程图5213数据字典622开发工具分析8221JSP概述8222MYECLIPSE概述10223SEVERLET与JAVABEAN10224MYSQL113数据库设计1331概念设计1

7、332逻辑设计1433物理设计144系统设计1641系统总体结构图1642系统功能模块设计1643系统主界面设计175系统实现1851系统前台主页的实现1852文章显示模块的实现1953系统后台主页的实现1954发表文章模块的实现2155系统详细代码21551前台主页实现代码21552文章显示模块主要代码25553后台主页实现代码28554发表文章模块主要代码296总结307致谢318参考文献32本科生毕业论文(设计)11绪论11课题研究的背景、意义111历史背景进入21世纪信息时代后,随着计算机网络的高速发展,人类进入了计算机网络世界,人与人之间也出现了多种多样的交流方式,从早期的ICQ,到

8、后来的EMAIL和BBS,都是在计算机网络的基础上诞生的。它们的出现让人类的交流变得更加的方便和快捷。之后,博客迅速崛起。在博客风靡全球的过程中,越来越多的人投入了博客系统的开发研究。主流开源博客系统包括WORDPRESS,PIVOTX,PJBLOG,ZBLOG,OBLOG,SABLOGX站上了博客发展技术尖端。博客系统的开发语言与技术平台的搭建方案层出不穷,基于各种技术语言开发的博客系统呈现百花争鸣的局面。博客系统成为了潮流风头的网络新兴文化系统。112研究现状博客,即WEBLOG1,后简称BLOG,又译为网络日志等2,是一种通常由个人管理、不定期张贴新文章的网站3。在台湾,人们认为BLOG

9、本身有社群群组的涵义,通常被音译成“部落格”4。BLOG就是以网络作为载体,简易迅速便捷地发布个人心得,及时有效轻松地与他人进行交流,再集丰富多彩的个性化展示于一体的综合性平台5。这些博客撰写人就叫做BLOGGER或BLOGWRITER6。BLOG一露面,立刻与EMAIL、BBS、ICQ并列四大网络交流方式7,并逐渐发展成网络时代的个人“读者文摘”8。这种以超级链接为武器的网络日记,给人们带来了生活方式和工作方式的创新,标志着一种新的学习方式9。另外,由于BLOG的沟通方式比电子邮件、讨论群组更为简易和方便,它逐渐被应用在企业内部网络INTRANET中10。据有关调查数据11显示,2006年1

10、1月3日,全球中文博客站点数量达到5230万,博客用户数达到1987万。有些调查数据12还显示出,2006年,中国大陆博客服务商持续大幅增长,大型网络公司如搜狐、百度纷纷推出相应的博客服务,博客服务商之间的市场竞争日趋激烈。有关调查机构还发现,博客的发展规律类似于新兴科技企业发展规律中的HYPECYCLE模型13,开始被媒体和从业者大为炒作,后来市场预期不断下降,直到现在的理性稳步发展,成为互联网的基本应用14。博客依赖的基础平台博客系统也随即进入开发热潮15。目前主流开源博客系统主要有这么几种16WORDPRESS,一种支持用户在PHP和MYSQL数据库的服务器上建立自己的BLOG的引擎;P

11、IVOTX,BLOGCMS,以PHP编写,管理者接口采用AJAX模式运作,SEO本科生毕业论文(设计)2友好,支持MYSQL数据库以及文本数据库等;PJBLOG,一套开源免费的中文个人博客系统程序,采用ASPACCESS的技术,支持简繁中文,UTF8编码,相对于其他系统具有相当高的运作效能以及更新率,也支持目前BLOG所使用的新技术;ZBLOG,一款小巧而强大的基于ASP平台的BLOG程序,支持界面主题及样式更换,采用WEBSTANDARDS网页设计标准,静态生成日志,支持自定义目录配置,支持FIERFOX、OPERA、SAFARI等浏览器,支持WAP、WINDOWSLIVEWRITER等离线

12、写作软件;OBLOG,一套经过完善设计的多用户博客建站程序,是WINDOWSNT服务环境下多用户博客程序的最佳解决方案;BOBLOG,一款基于PHP的、以MYSQL为数据库支持的免费BLOG程序,基于XHTMLCSSDIV布局的模板结构,可自由定制的页面模块、插件与模板,部分基于AJAX的新体验,多语言包化与UTF8国际编码,强大的SPAM信息防御机制,RSS、XMLRPC、TAGS支持,内置留言本、天气、表情、置顶、验证码、头像等;SABLOGX,一个采用PHP和MYSQL构建的博客系统,在代码质量、运行效率、负载能力、安全等级、功能可操控性和权限严密性等方面都比较好。而从这些主流开源博客系

13、统的实现技术来看,最主要的还是以PHP,ASP和JSP技术为主17。三种技术中,相比之下,JSP具有一次编写到处到处运行18,系统多平台支持19,强大的可伸缩性20,多样化和功能强大的开发工具支持等强势21。JSP应该是未来发展的趋势,尤其是电子商务类的网站,多采用JSP,世界上一些大的电子商务解决方案提供商都采用JSP/SERVELET22。但是,JSP也存在不可忽视的弱势23。与ASP一样,JAVA的一些优势正是它的致命问题所在,正是由于为了跨平台的功能,为了极度的伸缩能力,所以增加了产品的复杂性24。此外,JAVA的运行速度使用CLASS常驻内存来完成的,所以在一些情况下有些“最低性价比

14、”了25。博客系统的架构则是C/S和B/S这两种开发模式技术架构的主流技术26。C/S架构软件的优势主要有两点27,一是应用服务器运行数据负荷较轻,二是数据的储存管理功能较为透明。但C/S架构的劣势是需要高昂的维护成本且投资大。B/S架构软件的优势主要也是两点,一是维护和升级方式简单,二是成本降低,选择更多。但是,和C/S相反,B/S的劣势在于应用服务器运行数据负荷较重。此外,它们的区别还在于,C/S一般建立在专用的网络上,小范围里的网络环境,局域网之间再通过专门服务器提供连接和数据交换服务。B/S建立在广域网之上的,不必是专门的网络硬件环境,例如电话上网,租用设备,信息自己管理,有比C/S更

15、强的适应范围,一般只要有操作系统和浏览器就行28。博客系统的开发平台主要有MYECLIPSE,NETBEAN,ASPNET三种29。MYECLIPSE是一个开放源代码的软件开发项目,专注于为高度集成的工具开发提供一个全功能的、具有商业品本科生毕业论文(设计)3质的工业平台,主要由ECLIPSEPLATFORM、JDT、CDT和PDE组成。NETBEANS是一个全功能的开放源码JAVAIDE,可支持JAVA2平台标准版J2SE应用的创建、采用JSP和SERVLET的2层WEB应用的创建,以及用于2层WEB应用的API及软件的核心组的创建。ASPNET是基于通用语言的编译运行的程序,所以它的强大性

16、和适应性,可以使它运行在WEB应用软件开发者的几乎全部的平台上30。除此以外,主流开源博客系统颇青睐于SQLSERVER、ORACLE、ACCESS及MYSQL为主的数据库,其他辅助工具则有DREAMWEAVER31,CSS32,CKEDITOR等33。113意义博客具有知识过滤与积累的作用,还是一种深度交流沟通的网络新方式。基于博客的众多功能特点,在计算机网络高速发展的当代,认识网络的新事物,学习网络的新知识,深入了解博客,是非常有必要的。博客系统作为博客的承载体,其设计与实现也具有重要的意义。博客系统的功能、安装与使用、运行,博客系统的支持平台技术、数据库连接等等,都影响着博客的质量及博客

17、发表的便捷性。综合开发语言、技术与平台搭配的效果来看,JSP技术功能较为强大,基于JSP的博客系统开发较有发展前景并且功能更为完善,但是目前各种主流开源博客系统却偏爱于PHP技术方面的开发研究,JSP技术使用并不多。因此,采用JSP技术完成个人博客系统的设计与实现是值得挑战的事情。因此,毕业系统设计最终决定应用JSP技术,搭建“MYECLIPSEDREAMWEAVER”开发平台和“JAVABEANSERVLET”的开发技术结构,使用“MYSQLNAVICAT”数据库工具,并应用CSS进行系统美化,采用CKEDITOR进行博客系统的文章编辑。12课题的研究内容课题的主要内容是基于JSP的个人博客

18、系统的设计与实现。系统的前台用户操作模块实现用户查看博客文章、查看评论、评论文章等操作,而后台博主操作模块则是博主登陆、解决用户文章管理、文章类别管理等功能问题。13课题的研究方法(1)文献研究法,即通过调查文献来获得资料,从而全面地、正确地了解掌握所要研究问题。在文献研究过程中,将会大量阅读与博客知识与博客系统开发技术相关的文献资料,了解国内外相关研究成果,在通过对文献的分析、归纳和综合,在现有研究成果的基础上形成本系统的相关理论和功能结构,并借助计算机进行信息的搜集、整理和加工,形成对论文设计有用的信息。(2)理论与实际应用相结合的方法,分析系统的用户需求,在对各种系统开发平台、本科生毕业

19、论文(设计)4开发技术、开发环境、数据库技术等各方面的比较下,选择相对较佳方案(3)利用UML建模方法进行分析建模以及设计建模,并进行实际操作调试,从而实现本系统的具体功能。(4)系统分析与逻辑辩证分析相结合的方法。系统分析方法是用系统的观念来研究和处理有关对象和联系的科学方法;逻辑辨证分析法是按照事物自身的发展规律,运用判断推理的方法揭示事物内在规律及概念与概念之间联系的一种复合的科学分析方法。本科生毕业论文(设计)52系统分析21需求分析系统分析的任务是在文献资料阅读的基础上,通过对现行管理业务的分析,提出系统的目标要求和功能分析的总体逻辑模型。211需求定义(1)功能需求系统是一个基于J

20、SP与数据库技术的个人博客,前台用户操作模块完成用户查看博客文章、查看评论、评论文章以及博主登录等操作,而后台博主操作模块解决用户文章管理、文章类别管理、分类管理等功能问题。(2)性能需求安全性,即通过设置权限,防止博主数据遭篡改;正确性,即数据的操作和读取应该正确,不会出现连接错误。(3)开发环境需求应用JSP技术,搭建“MYECLIPSEDREAMWEAVER”开发平台和“JAVABEANSERVLET”的开发技术结构,使用“MYSQLNAVICAT”数据库工具,并应用CSS进行系统美化,采用CKEDITOR进行博客系统的文章编辑。212数据流程图根据系统调查阶段的数据资料,并依据博客用户

21、的要求,确定系统的数据流程图如下图评论访客文章信息表博主信息表分享文章类别表博主发布类别管理评论信息表留言类别管理文章发表文章删除操作文章信息修改操作分享操作信息本科生毕业论文(设计)6图21数据流程图213数据字典数据字典是对描述数据流程图中的数据项、数据流、数据存储、加工处理逻辑等组成部分的严格定义,下面是本系统的数据字典(由于篇幅原因,在此仅给出部分)。(1)数据项的定义数据项编号101数据项名称文章编号别名无简述某篇文章的编号类型字符型长度11字节数据项编号102数据项名称文章类型编号别名无简述某种文章类型的编号类型字符型长度6字节数据项编号103数据项名称文章题目别名题目简述某篇文章

22、的题目类型字符型长度255字节数据项编号104数据项名称文章正文别名正文本科生毕业论文(设计)7简述文章的正文内容类型字符型长度不限数据项编号105数据项名称发表时间别名无简述发表文章的时间类型时间日期型长度18(2)数据流的定义数据流名称文章编号F1简述博主发表的文章数据流来源博主数据流去向文章信息表数据流组成文章编号文章题目文章正文发表时间数据流名称留言编号F3简述访客发表的留言数据流来源访客数据流去向留言信息表数据流组成留言编号留言内容留言时间访客名称(3)数据存储的定义数据存储的名称文章信息表数据存储编号D1简述存放博主发表的文章本科生毕业论文(设计)8数据存储组成文章编号文章题目文章

23、正文发表时间关键字文章编号数据存储的名称留言信息表数据存储编号D3简述访客的留言数据存储组成留言编号留言内容访客名称关键字留言编号数据存储的名称博主信息表数据存储编号D4简述存放博主的个人资料数据存储组成博主的所有个人资料关键字博主姓名数据存储的名称文章类别表数据存储编号D5简述存放文章类别数据存储组成文章类别编号文章类别名称关键字类别编号数据存储的名称评论信息表数据存储编号D6简述存放文章评论信息和照片评论信息数据存储组成评论类型评论编号评论信息访客名称评论时间关键字评论类型评论编号22开发工具分析221JSP概述毕业系统的实现技术为JSP。JSP具有将内容的生成和显示进行分离,强调可重用的

24、组件,采用标识简化页面开发WEB页面,使用JSP标识或者小脚本来生成页面上的动态内容。本科生毕业论文(设计)9JSP技术内置脚本语言基于JAVA编程语言,且所有的JSP页面都被编译成为JAVASERVLET,“一次编写,各处运行”。JSP与ASP,PHP均为动态网页开发技术,都提供在HTML代码中混合某种程序代码、有语言引擎解释执行程序代码的能力。在ASP、PHP、JSP环境下,HTML代码主要负责描述信息的显示样式,而程序代码则用来描述处理逻辑。普通HTML页面只依赖于WEB服务器,而ASP、PHP、JSP页面需要附加的语言引擎分析和执行程序代码。程序代码的执行结果被重新嵌入到HTML代码中

25、,然后一起发送给浏览器。ASP、PHP、JSP三者都是面向服务器的技术,客端浏览器不需要任何附加的软件支持。但JSP代码被编译成SERVLET并由JAVA虚拟机解释执行,这种编译操作仅在对JSP页面的第一次请求时发生,因此采用JSP技术的页面执行速度较快。从应用范围来看,ASP是动态网页语言,也继承了微软产品的一贯传统,只能执行于微软的服务器产品,IIS和PWS上。在UNIX下也有CHILISOFT的组件来支持ASP,但是ASP本身的功能有限,必须通过ASPCOM的群组合来扩充,在UNIX的COM实现起来非常困难。PHP是免费的、开放源代码的、HTML嵌入其中的脚本语言,可在WINDOWS,U

26、NIX,LINUX的WEB服务器上正常运行,还支持IIS,APACHE等一般的WEB服务器。用户更换平台时,无需变换PHP代码,可即拿即用。JSP与PHP几乎都可以执行于所有平台,如WINDOWSNT、LINUX、UNIX。在WINDOWSNT下IIS通过一个外加服务器,例如JRUN或者SERVLETEXEC,就能支持JSP。知名的WEB服务器APACHE已经能够支持JSP。由于APACHE广泛应用在WINDOWSNT,UNIX和LINUX上,因此JSP有更广泛的执行平台。虽然现在WNT操作系统占了很大的市场份额,但是在服务器方面,UNIX的优势仍然很大,而新崛起的LINUX更是来势不小。从一

27、个平台移植到另外一个平台,JSP和JAVABEAN甚至不用重新编译,因为JAVA字节码都是标准的与平台无关的。JSP的动态部分用已经在联网、数据库访问、分布式对象等方面拥有广泛的API的JAVA编写,而PHP需要学习全新的、应用相对广泛的语言。两者相比,JSP拥有极为广泛的工具和服务器提供商的支持。另外,由于PHP本身存在的一些缺点,如PHP缺乏规模支持,缺乏多层结构支持等,使得它不适合应用于大型电子商务站点,而更适合于一些小型的商业站点。这三种技术相比之下,JSP系统多平台支持,强大的可伸缩性,多样化和功能强大的开发工具支持等强势。JSP应该是未来发展的趋势,尤其是电子商务类的网站,世界上一

28、些大的电子商务解决方案提供商都采用JSP/SERVELET。但是,JSP也存在不可忽视的弱势。与ASP一样,JAVA的一些优势正是它的致命问题所在,正是由于为了跨平台的功能,为了极度本科生毕业论文(设计)10的伸缩能力,所以增加了产品的复杂性。此外,JAVA的运行速度使用CLASS常驻内存来完成的,所以在一些情况下有些“最低性价比”了。222MYECLIPSE概述根据博客系统开发技术,本系统选择了MYECLIPSE开发平台。MYECLIPSE是一个开放源代码的软件开发项目,专注于为高度集成的工具开发提供一个全功能的、具有商业品质的工业平台。它主要由ECLIPSE项目、ECLIPSE工具项目和E

29、CLIPSE技术项目三个项目组成,具体包括四个部分组成ECLIPSEPLATFORM、JDT、CDT和PDEJDT支持JAVA开发、CDT支持C开发、PDE用来支持插件开发,ECLIPSEPLATFORM则是一个开放的可扩展IDE,提供了一个通用的开发平台。它提供建造块和构造并运行集成软件开发工具的基础。ECLIPSEPLATFORM允许工具建造者独立开发与他人工具无缝集成的工具从而无须分辨一个工具功能在哪里结束,而另一个工具功能在哪里开始。MYECLIPSE企业级工作平台(MYECLIPSEENTERPRISEWORKBENCH)是对ECLIPSEIDE的扩展,利用它我们可以在数据库和JAV

30、AEE的开发、发布,以及应用程序服务器的整合方面极大的提高工作效率。它是功能丰富的JAVAEE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML,STRUTS,JSF,CSS,JAVASCRIPT,SQL,HIBERNATE。223SEVERLET与JAVABEAN理论上,JSP并没有提供SERVLET不能完成的功能。实际上,JSP文档在后台被自动转换成SERVLET。SERVLET是一种独立于平台和协议的服务器端的JAVA应用程序,可以生成动态的WEB页面。SERVLET是使用JAVASERVLET应用程序设计接口及相关类和方法的JAVA程序,它在WEB服务器上或应用服务

31、器上运行并扩展了该服务器的能力。JAVASERVLET对于WEB服务器就好像JAVAAPPLET对于WEB浏览器。APPLET装入WEB浏览器并在WEB浏览器内执行,而SERVLET则是装入WEB服务器并在WEB服务器内执行。JAVASERVLETAPI定义了SERVLET和服务器之间的一个标准接口,这使得SERVLET具有跨服务器平台的特性。SERVLET通过创建一个框架扩展服务器的能力,采用请求响应模式提供WEB服务。与传统的CGI公用网关接口和许多其他类似CGI的技术相比,JAVASERVLET有许多优点。SERVLET具有很高的效率;更容易使用;功能更强大;具有更好的可移植性。JAVA

32、SERVLET是JSP技术的基础,大型的WEB应用程序的开发需要JAVASERVLET和JSP配合才能完成。在系统实现中,和单独使用SERVLER相比,JSP与SERVLET的配合更为有效。一方面,JSP中HTML的编写与维护更为简单。JSP中可以使用常规的HTML,没有额外的反斜杠,没本科生毕业论文(设计)11有额外的双引号,也没有暗含的JAVA语法。另一方面,它们的结合使得我们能够使用标准的网站开发工具。即使对那些对JSP一无所知的HTML工具,我们也可以使用,因为它们会忽略JSPTAGS。相关文献显示,JAVABEANSERVLET架构在博客系统实现中有很大的好处。JAVABEAN是描述

33、JAVA的软件组件模型,JAVABEAN就是一个JAVA类,是一种JAVA语言写成的可重用软件组件,它在内部有接口或有与其相关的属性,以便不同人在不同时间开发的BEAN可以询问和集成。非可视化的JAVABEAN与JSP结合起来使用,在JSP程序中常用JAVABEAN来封装事务逻辑(功能实现部分)如数据运算、数据处理、数据库操作等,然后在JSP网页中调用,而JSP文本着重的是网页界面设计,实现了业务逻辑和前台显示部分的分离,这样不仅使JSP网页变得清晰,而且可以节省软件开发时间和降低以后维护的难度,使系统变得健壮和灵活。JAVABEAN遵从一定的设计模式,使它们易于和其他开发工具和组件一起使用,

34、它是一种JAVA语言写成的可重用组件。要编写JAVABEAN,类必须是具体类和公共类,并且具有无参数的构造器(NONARGSCONSTRUCTOR)。JAVABEAN通过提供符合一致性设计模式的公共访问方法将内部字段暴露称为属性。众所周知,属性名称也符合这种模式,其他JAVA类可以通过自省机制发现和操作这些JAVABEAN属性。用户可以使用JAVABEAN将功能、处理、值、数据库访问和其他任何可以用JAVA代码创造的对象进行打包,并且其他的开发者可以通过内部的JSP页面、SERVLET、其他JAVABEAN、APPLET程序或者应用来使用这些对象。用户可以认为JAVABEAN提供了一种随时随地

35、的复制和粘贴的功能,而不用关心任何改变。采用JAVABEANSERVLET结构来进行开发设计可以灵活处理网页中的数据交换,能够很好的体现MVC的设计思想,将表示层、业务层和数据层分离,并且通过SERVLET来控制页面的流向,使得整个系统设计思路比较清晰。224MYSQL博客系统使用的网络数据库管理系统是MYSQL。MYSQL,是一个快速、多线程、多用户和强壮的SQL数据库服务器。SQL是世界上最流行的标准化的数据库语言。MYSQL是具有客户机/服务器体系结构的分布式数据库管理系统,是完全网络化的跨平台关系型数据库系统,是目前运行速度较快的SQL语言数据库。MYSQL功能强,使用简便,管理方便,

36、运行速度快,安全可靠性强。由于MYSQL是命令行形式的,为了提高开发效率,可以选择了NAVICATMYSQL辅助管理数据库。NAVICAT是一个强大的MYSQL数据库服务器管理和开发工具。它可以与任何321或以上版本的MYSQL一起工作,本科生毕业论文(设计)12并支持大部分的MYSQL最新功能,包括触发器、存储过程、函数、事件、视图、管理用户,等等。它不仅对专业开发人员来说是非常尖端的技术,而且对于新手来说也易学易用。由于MYSQL是命令行形式的,为了提高开发效率,在本系统设计中还选择了NAVICATMYSQL辅助管理数据库。NAVICAT是一个强大的MYSQL数据库服务器管理和开发工具。它

37、可以与任何321或以上版本的MYSQL一起工作,并支持大部分的MYSQL最新功能,包括触发器、存储过程、函数、事件、视图、管理用户,等等。它不仅对专业开发人员来说是非常尖端的技术,而且对于新手来说也易学易用。其精心设计的图形用户界面(GUI),NAVICATMYSQL可以让用户用一种安全简便的方式快速并容易地创建,组织,访问和共享信息。此外,本博客系统中与数据库有大量的交互操作,为进一步提高数据库操作效率,毕业系统中使用了DBUTILS操作数据库的组件,对传统操作数据库的类进行二次封装,可以把结果集转化成LIST。DBUTILS的使用大量减少了代码开发量。本科生毕业论文(设计)133数据库设计

38、数据库是数据库应用程序的核心。数据库设计是建立一个应用程序最重要的步骤之一。数据库设计一般要在需求分析和数据分析的基础上进行概念设计、逻辑设计和物理设计。31概念设计系统中的实体类型有博主、访客、文章、照片等,这些实体之间的相互关系有博主与文章之间存在“发表”联系,是一对多关系;博主与评论信息表之间存在“回复”联系,是一对多关系;博主与留言板存在“回复”联系,是一对多关系;访客与文章之间存在“浏览”联系,是多对多关系;访客与评论信息表之间存在“评论”联系,是多对多关系;访客与留言板存在“留言”联系,是多对多关系。每个实体的属性分别是博主(姓名,性别,年龄,学历,其他信息);访客(访客ID,其他

39、信息);文章(文章编号,文章题目,文章正文,发表时间);留言板(留言编号,留言内容,访客名称);评论信息表评论类型,评论编号,评论信息,访客名称,评论时间;画出个人博客系统的ER图如图41所示。博主访客评论信息表博客文章浏览分享发表管理评论NN1NNNNNN1图31个人博客管理ER图本科生毕业论文(设计)1432逻辑设计依据DBMS的特征,把概念结构转换为相应的逻辑结构,这就是逻辑设计的任务。概念设计中设计的ER模型独立于DBMS,这里的转换就是把表示概念结构的ER图转换成关系模型的逻辑结构。将上图转换为规范的关系模式为文章信息表(文章编号,文章题目,文章正文,发表时间)留言信息表(留言编号,

40、留言内容,访客名称博主信息表(博主ID,昵称,性别,年龄,其他信息)文章类别表(文章类别编号,文章类别名称)评论信息表评论类型,评论编号,评论信息,访客名称,评论时间33物理设计在系统的数据库设计中,由对具体DBMS特征的分析来确定数据库的物理结构(也称为存储结构),这就是物理设计的目的是。关系数据库的物理设计任务有两个,一是确定所有数据库文件的名称、数据库所含字段的名称、类型与宽度;二是确定各数据库文件需要建立什么索引,在什么字段上建立索引等。根据系统功能设计要求和模块划分,本站的数据库主要包括文章信息、文章类别、照片信息、文章评论信息、留言信息。数据表结构图如下表1TB_ARTICLE表表

41、2TB_ARTICLETYPE表本科生毕业论文(设计)15表3TB_MASTER表表4TB_REVIEW表表5TB_WORD表本科生毕业论文(设计)164系统设计41系统总体结构图绘制系统结构图的过程,实际上就是对系统功能模块进行分解设计的过程,即合理地将数据流程图转变为所需要的系统结构图。系统结构图将会使读者和用户能直观的了解系统的结构模式,理解系统的各个功能的结构,能很好地方便用户使用和理解整个系统。个人博客系统结构图如图41所示图41博客网站功能结构图42系统功能模块设计根据需求分析的结果,个人博客系统功能模块主要分为前台用户操作子模块(访客访问博客系统)和后台博主操作子模块。(1)前台

42、用户操作子模块前台用户操作子模块所要实现的功能主要是博客系统的访客访问系统从而访问博客、浏览博文、查看评论、评论博客文章、分享博文等操作。(2)后台博主操作子模块系统的后台博主操作模块主要实现博主登陆与管理功能。博主登陆。博主输入正确的用户名与密码后便可对系统进行正常浏览与管理。文章管理。主要实现发表博文、修改博文、删除博文等功能。文章类别管理。博主可以对博客文章进行分类,也可以增加、删除文章类别或修改文章类别名称。评论管理。对于访客评论,博主浏览过后可以对其进行回复、删除操作。前台功能后台功能博客功能访问博客浏览博文发表评论发表博文分类管理系统管理博文管理评论管理分享博文本科生毕业论文(设计

43、)1743系统主界面设计主界面是一个系统的门面,如同公司的形象,特别注重设计和规划。为此,系统设计过程中从以下几个方面对主界面进行了设计考虑(1)在色彩搭配上,系统选择了较明快的色彩为基调,前台以红色为主,后台以蓝色为主,力求简洁明了。(2)在字体选用上,大小适当,尽量使用常用字体,适当配用艺术字。(3)在网页制作上,采用框架式结构,在框架中嵌入子页,将大表化小,图片压缩,尽量减少页面响应时间。(4)在用户操作上,简化用户操作,删去那些空洞的环节。本科生毕业论文(设计)185系统实现51系统前台主页的实现系统前台的主页通过使用STYLESCSS进行美化和实现,并在各个信息显示区调用SERVLE

44、T的过程或获取JAVABEAN的值来完成最终页面的生成。前台主页的布局与前台主页分别如图51,图52所示页头内容显示区侧栏图51前台的布局设计图52前台主页本科生毕业论文(设计)1952文章显示模块的实现在博客系统中,文章显示模块,主要功能是用户查看文章的详细内容,文章显示功能需要显示的信息包括文章标题、发表时间、所属分类、来源、评论等。文章的显示需要先到GETBLOGSERVLET中读取文章内容及评论,然后完成最终的显示。如图53所示图53文章显示模块图53系统后台主页的实现在系统的后台中,博主可以进行发博文、博文管理、分类管理、评论管理、添加分类等操作,每一个操作用一个JSP页面来执行。由

45、于使用了CSS代码,为了降低代码冗余,系统专门写了一个HEADERJSP和FOOTERJSP来提供公用的一部分代码,然后在各个JSP页面中INCLUDE进来。系统后台布局如图54所示。本科生毕业论文(设计)20导航内容显示区图54后台的布局设计进入后台之前需要先进行身份验证,如图55所示。图55后台的身份验证输入用户名及密码如ADMINADMIN然后点击“登录”按钮,登录成功后即可见到后台的界面,如图56所示。图56后台界面效果图最终的文章发表界面如图57所示本科生毕业论文(设计)21图57文章发表界面54发表文章模块的实现一个完善的博客系统应该提供一个功能强大的编辑器来实现文章的编辑和发表。

46、因此,系统在博客中添加了强大的HTML编辑器CKEDITOR来辅助完成文章编辑。使用CKEDITOR之前先得对其进行一些配置,包括添加中文字体、工具栏定制等。经过摸索,本人编写了一个配置方案。详细代码见55系统详细代码。55系统详细代码551前台主页实现代码本科生毕业论文(设计)22X部落格X部落格本科生毕业论文(设计)23“TARGET“_BLANK“200NEWSTRINGSOURCESUBSTRING0,200“ELSENEWSTRINGSOURCEOUTPRINTNEWSTRING“进入后台管理分类本科生毕业论文(设计)24全部“最近的主题“TARGET“_BLANK“最近的评论“TA

47、RGET“_BLANK“552文章显示模块主要代码类别“|来源评论本科生毕业论文(设计)27发表评论“/名字内容本科生毕业论文(设计)28553后台主页实现代码HEADERJSP代码如下X部落格欢迎,ADMIN用户|发博文|博文管理|分类管理|评论管理|添加分类|退出FOOTERJSP代码如下本科生毕业论文(设计)29554发表文章模块主要代码CKEDITOREDITORCONFIGFUNCTIONCONFIGCONFIGAUTOLANGUAGEFALSECONFIGDEFAULTLANGUAGEZH_CNCONFIGFONT_NAMES宋体楷体黑体隶书ARIALTIMESNEWROMANVE

48、RDANACONFIGHEIGHT400CONFIGWIDTH700CONFIGFONT_DEFAULTLABEL宋体CONFIGFONTSIZE_DEFAULTLABEL12PXCONFIGENTITIESFALSECONFIGFULLPAGEFALSECONFIGFONTSIZE_SIZES12/12PX14/14PX16/16PX18/18PX20/20PX22/22PX24/24PX26/26PX28/28PX36/36PX48/48PX72/72PXCONFIGTOOLBARBOLD,ITALIC,UNDERLINE,STRIKE,SUBSCRIPT,SUPERSCRIPT,NUMB

49、EREDLIST,BULLETEDLIST,OUTDENT,INDENT,BLOCKQUOTE,JUSTIFYLEFT,JUSTIFYCENTER,JUSTIFYRIGHT,JUSTIFYBLOCK,LINK,UNLINK,ANCHOR,TABLE,HORIZONTALRULE,SMILEY,SPECIALCHAR,PAGEBREAK,/,STYLES,FORMAT,FONT,FONTSIZE,TEXTCOLOR,BGCOLOR,MAXIMIZE,SHOWBLOCKS,SOURCE,UNDO,REDO本科生毕业论文(设计)306总结个人博客系统是对现在比较流行的博客网站进行详细调研后,确定了系统涉及的领域,包括数据库设计、界面设计等,是一个具有实际应用意义的系统。本系统已实现功能如下(1)前台用户操作子模块所要实现的功能主要是博客系统的访客访问系统从而访问博客、浏览博文、查看评论、评论博客文章、分享博文等操作。(2)后台博主操作子模块,系统的后台博主操作模块主要实现博主登陆与管理功能。包括博主登陆、文章管理、文章类别管理、评论管理等功能。经过对主

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 学术论文资料库 > 毕业论文

Copyright © 2018-2021 Wenke99.com All rights reserved

工信部备案号浙ICP备20026746号-2  

公安局备案号:浙公网安备33038302330469号

本站为C2C交文档易平台,即用户上传的文档直接卖给下载用户,本站只是网络服务中间平台,所有原创文档下载所得归上传人所有,若您发现上传作品侵犯了您的权利,请立刻联系网站客服并提供证据,平台将在3个工作日内予以改正。