Java个人微博客毕业设计论文.docx
- 文档编号:8996542
- 上传时间:2023-02-02
- 格式:DOCX
- 页数:30
- 大小:2.62MB
Java个人微博客毕业设计论文.docx
《Java个人微博客毕业设计论文.docx》由会员分享,可在线阅读,更多相关《Java个人微博客毕业设计论文.docx(30页珍藏版)》请在冰豆网上搜索。
Java个人微博客毕业设计论文
2014届
分类号:
TP311
单位代码:
10452
学士学位毕业设计(论文)
基于JSP的个人微博客系统
注意注意临沂大学的学生不要使用,,,这是我已经通过的。
。
2014年3月
PERSONALMICROBLOGSYSTEMBASEDONJSP
By
April2014
诚信声明
本人呈交给临沂大学的这篇毕业论文,除了所注参考文献和所公认的文献外,全部是本人在指导老师指导下的设计成果。
学生签名:
日期:
经检查该毕业设计(论文)为独立完成,不存在抄袭现象。
指导老师签名:
日期:
摘要
博客作为一种新的表达方式,既传播情绪,同样还传播着大量的智慧、思想和意见。
从一定意义上来说,它是一种新的文化现象,它的出现和繁荣标志着互联网发展开始步入更高的阶段,从而真正凸现网络的知识价值。
本系统主要实现博主发表博文和相片,游客浏览、发表评论,以及发表留言等功能。
本系统使用EnterpriseArchitect和MyEclipse等工具设计并实现。
MVC是一个强制性的使的、和分开的框架模式。
JSP+servlet+javabean是最典型的MVC模式。
使用MVC模式后,应用程序就会被分成三个主要部件:
、、。
它们各自处理自己的任务。
本系统使用数据库是SQLServer2008。
SQLServer可以承受世界上最强的负载,可以对整个数据库、数据文件和日志文件进行加密,而不需要改动应用程序,并且它通过支持第三方密钥管理和安全模块(HSM)产品为外键管理提供了支持。
关键词:
模型/视图/控制器(MVC);博客系统;SQLServer
Abstract
Blog isanew wayof expression, it spreadnotonly emotions, butalsoalotofwisdom, opinionsand ideas. Inasense, itisa kindofnewculturephenomenon,markedthedevelopmentoftheInternethas startedtoenterthe highersystemmainlyrealizesthe blogger publish blog andphoto, visitors can browse comments, and published messagesandotherfunctions.
Thedesignofthe systemusingEnterprise Architect andMyEclipse tools toimplement. MVCisaframework model, itseparates mandatory the applicationofinput, processingandoutput . UsetheMVCapplication isdividedintothreecorecomponents:
model, view, controller. Theyhandletheirowntasks. ThemosttypicalMVC mode istheJSP+servlet+javabean .
ThissystemisusingthedatabaseSQLServer2008.SQLServercanbeartheloadofthestrongestintheworld,totheentiredatabase,datafiles,andlogfileisencrypted,withouttheneedforchangestotheapplication,anditthroughathirdpartysupportkeymanagement(HSM)productsandsecuritymoduleprovidessupportforforeignkeymanagement.
KeyWords:
View/Model/Controller(MVC);BlogSystem;SQLServer
前言
博客,译为网络日志,部落格或部落阁等,是一种通常由个人管理,不定期会发表新的文章的网站。
许多博客专注于就新闻上特定的主题提供评论或发表自己的看法,其他的则被作为记录心情、生活的个人日记。
一个典型的博客结合了文字,图片,其他博客或网站的链接,以及与主题相关的其他媒体,通过互动的方式让读者留下意见,是许多博客所追求的。
博主在与读者的互动中能够结交友人,虽然未曾见面,但同样能感受到友人的支持与鼓励。
博客作为一种新的表达方式,既传播情绪,同样还传播着大量的智慧、思想和意见。
从一定意义上来说,它是一种新的文化现象,它的出现和繁荣标志着互联网发展开始步入更高的阶段,从而真正凸现网络的知识价值。
博客已经成为互联网文化中不可分割的一部分。
现如今的网民每个人都有属于自己的博客,会浏览阅读博客,几乎每一个人都会有一两个特别钟爱的博客,无论是传统新闻媒介的“官方”新闻博客还是与自己爱好兴趣相关的话题性博客或是纯娱乐博客。
由于博客沟通方式比电子邮件、讨论群组更容易和简单,博客已成为家庭、朋友、部门、团队之间越来越盛行的沟通方式。
博客能够实现多用户间的交互,满足用户可以彼此访问对方的博客、评论、留言等需求。
目前各大网站做得各具特色,功能上十分完善,但有些博客页面广告太多让人眼花缭乱,用户使用博客过程中经常无意点击导致进入广告网站,更有不怀好意者做的广告携带病毒致使电脑中毒。
本着满足用户最基本的需求并创建一个安全健康的博客系统设计了个人微博客系统。
本系统使用JSP技术MVC模式实现。
对博客系统中相片上传下载使用jspSmartUpLoad组件来实现,将上传的图片的路径存到数据库中,通过查询数据库中存储的路径使对应相片在页面中显示。
在博文列表下由于博文数量可能较多因此默认显示每类博文最新发表的十篇,点击对应的博文类别标题就能够浏览该类别下的以分页形式显示的所有博文,这样便于用户查找、浏览博文。
用户可以对博主进行留言,在首页留言模块会显示出最近的三条评论。
每篇博文都有浏览数量及评论数量,用户点击每一个博文标题就进入博文展示页面,此时博文的浏览数会得到更新,用户对博文进行评论后会更新博文评论数。
第1章绪论
开发工具介绍
个人微博客系统是基于MVC+JDBC架构进行开发,开发工具:
MyEclipse,运行环境:
Windows7+Tomcat服务器,数据库:
SQLServer2008,UML建模工具:
EnterpriseArchitect。
1.开发工具:
MyEclipse企业级工作平台(MyEclipseEnterpriseWorkbench,简称MyEclipse)是对EclipseIDE的扩展,利用本平台能够使得在数据库和J2EE的开发、发布,以及应用程序服务器的整合方面的工作效率得到极大地提高。
MyEclipse是功能丰富的J2EE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML,CSS,JSF,Struts,Javascript,Hibernate,SQL。
MyEclipse是基于Eclipse平台的一个插件工具,该版本集成了Eclipse3.5.2,提升了团队协作开发、开发周期管理以及Spring和Hibernate的更好支持。
2.服务器:
Tomcat
Tomcat是由Apache软件基金会下属的Jakarta项目开发的一个Servlet容器,按照SunMicrosystems提供的技术规范,实现了对Servlet和JavaServerPage(JSP)的支持,并提供了作为Web服务器的如:
Tomcat管理和控制平台、安全局管理和Tomcat阀等一些特有功能。
Tomcat可以被视作一个单独的Web服务器因为其本身也内含了一个HTTP服务器。
ApacheTomcat包含了一个配置管理工具,可以通过编辑XML格式的配置文件来进行配置。
本系统使用的是Tomcat。
能够支持Servlet。
2.数据库:
SQLServer2008
SQLServer是一个关系数据库管理系统。
它最初是由Microsoft、Sybase和Ashton-Tate三家公司共同开发的,于1988年推出了第一个OS/2。
在WindowsNT推出后,Microsoft与Sybase在SQLServer的开发上就了,Microsoft将SQLServer到WindowsNT上,专注于推广SQLServer的WindowsNT版本。
SQLServer2008在的数据平台上发布,可以组织管理任何数据。
可以将结构化、半结构化和非结构化文档的数据直接存储到数据库中。
可以对数据进行查询、搜索、同步、报告和分析之类的操作。
数据可以存储在各种设备上,从数据中心最大的服务器一直到桌面计算机和移动设备,它都可以控制数据而不用管数据存储在哪里。
开发技术介绍
1.个人微博客系统使用JSP技术完成。
JSP全名为JavaServerPages,是一个简化的Servlet设计,它以<%,%>形式在Html中嵌入Java程序片。
JSP同Servlet都是在服务器端执行的,返回给客户端的一个HTML文本,客户端使用浏览器就能浏览页面。
Web服务器接收到访问JSP网页的请求时,首先执行其中的java程序段,然后将执行结果连同JSP文件中的HTML代码一起返回给客户端。
插入的Java程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。
JSP页面很少进行数据处理,一般只是用来实现静态化页面,只是用来通过表单提交数据,不会进行业务处理,对于业务处理放到servlet中。
JavaServlet是JSP的技术基础,通常的Web应用程序的开发需要JavaServlet和JSP配合才能完成。
JSP具备了Java技术的简单易用,完全的面向对象,具有平台无关性且安全可靠的特点。
2.图片的上传下载利用组件
jspSmartUpload是由网站开发的一个可免费使用的全功能的文件上传下载组件,适于嵌入执行上传下载操作的JSP文件中。
该组件有以下几个特点:
(1)、使用简单。
在JSP文件中书写三五行java代码就可以实现文件的上传或下载,方便。
(2)、能全程控制上传。
利用jspSmartUpload组件提供的对象及其操作方法,可以获得全部上传文件的信息(包括文件名,大小,类型,扩展名,文件数据等),方便存取。
(3)、能对上传的文件在大小、类型等方面做出限制。
如此可以滤掉不符合要求的文件。
(4)、下载灵活。
仅写两行代码,就能把Web服务器变成文件服务器。
不管文件在Web服务器的目录下或在其它任何目录下,都可以利用jspSmartUpload进行下载。
论文组织结构介绍
根据项目开发流程,论文的组织结构如下。
第1章介绍了个人微博客系统的开发工具和开发语言以及文章组织。
在第2章中对系统进行了项目的需求分析和面向对象分析和设计。
第3章通过UML语言里的用例图(Usecasediagram)、类图(classdiagram)来分析系统项目,并对数据库进行了基本的分析和建模。
第4章是对项目的编码实现,节介绍系统的实现,并介绍了如何处理乱码的方法。
在第5章介绍了项目的测试计划和方案,并列举了测试数据和分析结果。
最后对项目开发阶段所做的总结和进一步的展望。
第2章项目需求分析
需求功能点介绍
随着时代在进步,网络技术也在不断地发展,博客已经成为互联网文化中不可分割的一部分。
现如今的网民每个人都有属于自己的博客,会浏览阅读博客,几乎每一个人都会有一两个特别钟爱的博客,无论是传统新闻媒介的“官方”新闻博客还是与自己爱好兴趣相关的话题性博客或是纯娱乐博客。
相对于电子邮件、讨论群组,博客的沟通方式更为容易和简单,博客成为家庭、朋友、部门、团队之间越来越盛行的沟通方式。
此系统包括博主模块、游客模块、学生模块。
1.博主模块:
博主登录,发表博文,添加博文类别,修改及删除博文,删除博文类别,添加相册类别,添加相册,删除相册等功能。
2.游客模块:
浏览博文,发表评论,对博主留言,查看相册等功能。
用例图表示需求
在UML中,用例(UseCase)是对一组动作序列(其中包括它的变体)的描述,系统执行该动作序列来为参与者产生一个可观察的结果值。
一个用例用于描述一组序列,一个序列表示系统外部的事物(系统的参与者)和系统本身(和它的关键抽象)的交互。
本系统中有2种类型的参与者。
他们是:
博主、游客。
在下面的用例图中,将分别对这两种参与者可使用的用例进行描述。
1.博主用例图
图21博主用例图
2.游客用例图
图22游客用例图
用例图描述
以下对系统用例图进行了描述。
1.博主用例图描述(主要用例)
(1)博主登录用例如下表所示。
表21登录系统用例描述
用例名称
登录博客系统
用例目标
当博主登录系统时用例开始,它验证博主身份,当完成一次处理后用例结束
级别
子功能
活动者
博主
状态
只定义了初始路径
前件条件
无
成功后件
博主进入博客首页()
主路径
博主进入登录界面以后,输入正确的用户名和密码,博主登录到系统中
可选路径
博主进入登录界面以后,单击“直接进入”
例外路径
博主进入登录界面以后,输入无效的账号和/或密码,系统显示“用户输入的用户名和密码错误”,博主可以选择返回主路径的起始点,重新输入正确的账号和密码;或单击“直接进入”
(2)博文管理用例如下表所示。
表22博文管理用例描述
用例名称
博文管理
用例目标
当博主发表博文、修改博文、删除博文时用例开始,当博主发表、修改、删除博文成功后用例结束
级别
子功能
活动者
博主
状态
只定义了初始路径
前件条件
博主登陆个人微博客系统
成功后件
博主发表、修改、删除博文成功后
主路径
博主进入发表、管理博文界面,添加或更新博文,并保存到数据库中
可选路径
例外路径
无
(3)相片管理用例如下表所示。
表23相册管理用例描述
用例名称
相册管理
用例目标
当博主添加、删除相片时用例开始,,当博主操作成功后用例结束
级别
子功能
活动者
博主
状态
只定义了初始路径
前件条件
博主登陆系统
成功后件
博主添加、删除相片成功
主路径
博主进入添加相片界面后,相片添加、删除成功,并存入数据库中
可选路径
无
例外路径
无
(4)博文类别管理用例如下表所示。
表24博文类别管理用例描述
用例名称
博文类别管理
用例目标
当博主添加、删除博文类别时用例开始,当博主操作成功后用例结束
级别
子功能
活动者
博主
状态
只定义了初始路径
前件条件
博主登录系统
成功后件
博主添加、删除博文类别,并成功保存到数据库中
主路径
博主进入添加、删除博文类别界面后,选择添加博文类别或删除,并存入数据库中
可选路径
无
例外路径
无
(5)相册类别管理用例如下表所示。
表25相册类别管理用例描述
用例名称
相册类别管理
用例目标
当博主添加、删除相册类别时用例开始,当博主操作成功后用例结束
级别
子功能
活动者
博主
状态
只定义了初始路径
前件条件
博主登录系统
成功后件
博主添加、删除相册类别,并成功保存到数据库中
主路径
博主进入添加、删除相册类别界面后,选择添加相册类别或删除,并存入数据库中
可选路径
无
例外路径
无
2.游客用例图描述(主要用例)
(1)发表评论用例如下表所示。
表26发表评论用例描述
用例名称
发表评论
用例目标
用户对博主所发表的博文进行评论时用例开始,它处理发表评论的问题,当用户结束评论时用例结束
级别
子功能
活动者
用户(游客或博主)
状态
只定义了初始路径
前件条件
无
成功后件
评论发表成功
主路径
用户发表评论,系统保存评论
可选路径
无
例外路径
无
(2)发表留言用例如下表所示。
表27发表留言用例描述
用例名称
发表留言
用例目标
用户发表留言时该用例开始,它处理留言问题,当留言提交成功时用例结束
级别
子功能
活动者
用户(游客或博主)
状态
只定义了初始路径
前件条件
无
成功后件
用户发表留言成功
主路径
用户发表留言,系统保存留言
可选路径
无
例外路径
无
第3章详细分析与设计
面向对象分析
面向对象分析是从系统能完成的功能,以及对象间的相互关联关系为核心,分析主要围绕着对象的分类,相关属性和操作的标识,类和实例之间的关系,以及各种对象的行为特征等方面进行。
在一个面向对象系统中客观世界的实体均用对象表示,此外对象还可以表示是支持软件开发者所需要的功能。
从实现形式上看,一个对象是一系列状态和一系列可被外部调用的操作或方法的封装体。
状态记录了操作后的结果,方法定义了一系列的计算步骤,当请求一个对象执行有关方法,则说对这个对象施加了一个操作。
对象上可执行的操作描述了对象执行的功能,它通过一个外部接口表述。
通过接口对象可以交互,交互通过消息的传递来完成,这里消息是一个对象与另一个对象之间的通信单元,是要求某个对象执行某个操作的规格说明。
类是一组具有相同数据结构的和相同操作的对象的集合。
类的定义包括一组状态的描述和方法的定义,类的定义可视为一个具有类似状态与共同行为的对象的模板。
类模板以外部接口和内部算法以及数据结构的形式提供了一个类的完整描述。
这种方法的主要优点是实现一个类的工作只需进行一次。
在一个类中,每个对象都是类的实例(instance),对象可以通过一个实例化机制动态地产生。
继承(inheritance)是使用已存在的定义作为基础建立定义的技术。
新类可以通过修改或扩充已存在的类来定义,因而新类共享已有类的行为,但具有修改和添加的行为,这种行为共享是继承的本质特性。
这样定义的新类成为已有类的子类,已存在的那个类成为新类的父类。
由上可知,面向对象不是一种编程语言,它是一种方式。
它把程序看成是相互协作而又彼此独立的对象集合,每一个对象就像一个微型程序,有自己的状态和功能。
这种新方式带来了许多突出的优点,如模块性、重用性和维护性。
对象的引入,将“现实世界”和“软件程序”在语义上的分歧最小化了,并屏蔽了实现细节,这使得理解和调试大型程序变得非常容易;而类则支持行为共享,并提供了软件开发过程中的代码重用,这些使得面向对象技术在软件开发的全过程中表现出高效并易于维护[8]。
类图设计
从用例图到类图,是使用UML进行系统分析的核心步骤,也是系统的分析和设计中重大的步骤。
这一步帮助我们从仅仅知道系统完成以后做什么,深入到了系统将如何完成那些功能。
3.2.1类图
类图(ClassDiagram)用来显示系统中各个类的静态结构。
类代表系统内处理的事物,这些类可以以多种方式相互连接在一起,包括关联(类相互连接)、依赖(一个类依赖/使用另一个类)、特殊化(一个类是另一个类的特化)或者大包(多个类组合为一个单元)。
所有的这些关系连同每个类的内部结构都在类图中显示,其中,一个类的内部结构是用类的属性和操作表示的。
因为类图所描述的结构在系统生命周期的任何一处都是有效的,所以通常认为类图是静态的。
一个系统一般都有多个类图,并不是所有的类图都放在一个类图中,并且一个类可以参与到多个类图中。
下图为本系统的类图。
图31类图
数据库基本分析与建模
实现一个专业的管理系统,必然会涉及到后台数据库对系统数据信息的保存和维护,考虑到系统对用户并行处理数据库中数据的需求,一般都会选择Oracle,DB2等大型数据库管理系统,考虑到系统的可移植性和开源性,采用对用户并发连接数量的优异表现,本系统中相关的数据信息均采用SQLServer数据库管理系统进行处理。
3.3.1数据库的需求分析
根据个人微博客系统的一般要求,通过对整个系统功能、数据流程和运行过程的分析,可以得出数据库中应包含以下各表:
1.文章表:
文章编号,文章标题,文章内容,文章发表时间,文章类别,文章浏览次数,文章评论次数。
2.文章类别表:
文章类别编号,文章类别名称。
3.评论表:
评论编号,文章编号,用户名称,评论时间,评论内容。
4.博主信息表:
博主编号,博主昵称,博主真实姓名,博主注册时间,博主性别,博主生日,博主身高,博主体重,博主登陆次数,博主发表博文数量,博客浏览次数。
5.留言表表:
留言编号,留言者,留言内容,留言时间。
6.相片表:
相片编号,相册类别编号,相片名称,相片路径。
7.相册类别表:
相册类别编号,相册名称,相册封面图片路径。
3.3.2数据库的逻辑设计
根据个人微博客系统的需求分析,在确定了各个表主键字段的基础上,依据表与表之间相关字段之间的联系建立了各表之间的关系,这些关系的建立可以避免由于误操作导致数据库的崩溃,保证各表之间数据的统一性。
数据库的对应关系图如下(图3-3)。
图33数据库对应关系图
1.博文信息表:
博文表(article)是用来保存博主所发表的所有博文信息的数据表,在下表(表3-1)中列出了该表中所包含的字段描述信息。
表38博文信息表
列名
类型
宽度
列含义
主键
递增
外键
articleId
int
4
文章编号
是
是
否
articleTitle
varchar
50
文章标题
否
否
否
articleContent
text
文章内容
否
否
否
articleSendTime
varchar
50
发表文章时间
否
否
否
readCount
int
4
阅读次数
否
否
否
commentCount
int
4
评论次数
否
否
否
articletype_id
int
4
文章类型编号
否
否
是
2.博文类别信息表:
博文类别表(articletype)是用来保存博文类别信息的数据表,在下表(表3-2)中列出了该表中所包含的字段描述信息。
表32博文类别表
列名
类型
宽度
列含义
主键
递增
外键
t_id
int
4
文章类别编号
是
是
否
name
varchar
50
类别名称
否
否
否
3.评论表:
评论表(comment)是用来保存评论信息的数据表,在下表(表3-3)中列出了该表中所包含的字段描述信息。
表33评论表
列名
类型
宽度
列含义
主键
递增
外键
commentId
int
4
评论编号
是
是
否
articleId
int
4
文章编号
否
否
是
commentAuthor
v
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- Java 个人 博客 毕业设计 论文