毕业设计王纪兵.docx
- 文档编号:13593951
- 上传时间:2023-06-15
- 格式:DOCX
- 页数:60
- 大小:2.55MB
毕业设计王纪兵.docx
《毕业设计王纪兵.docx》由会员分享,可在线阅读,更多相关《毕业设计王纪兵.docx(60页珍藏版)》请在冰点文库上搜索。
毕业设计王纪兵
安徽工业大学工商学院
毕业设计(论文)任务书
课题名称
博客系统
项目100%可以运行,自己独立完成
源码
需要源码的可以联系我
916673309
昵称
旧城
邮箱
916673309#(#换成@)
毕业设计(论文)的主要内容及要求:
1.分析网络博客系统管理的业务需求,进行需求分析。
2.设计博客系统的业务模型,构建软件系统的工作流程和基本模块结构。
3.根据需求分析和建立的业务模型完成课题的设计、编码、测试等工作。
4.完成毕业设计说明书(毕业论文)一份。
5.完成5000字的与设计内容有关的外文资料翻译。
指导教师签字:
日期:
年月日
摘要
随着Internet的广泛应用,动态网页技术也应运而生。
本文介绍了应用JSP网页技术开发博客系统的设计与实现。
博客系统主要为用户提供发表文章、浏览文章等功能,用户通过Internet可以发表一些自己撰写的文章以和其他网友进行交流。
博客系统主要实现了文章管理的数字化、信息化、智能化,是打破传统报刊、杂志发表文章方式的新尝试。
本系统的开发设计实现采用JAVA技术,系统后台使用MySQL5.5数据库,并通过使用JDBC技术访问。
本文对博客系统进行整体分析,明确了系统的可行性和用户需求;根据模块化原理,规划设计了系统功能模块;在数据库设计部分,详细说明了系统数据库的结构和数据库的完整性、安全性措施;程序设计则采用面向对象的程序设计思想,提出系统的程序设计思路,对前台与后台功能的程序实现进行了详细论述;系统测试部分,具体分析测试过程中出现的主要问题,并提出了解决方案,实现系统功能。
最后,对系统作以客观、全面的评价,并对进一步改进提出了建议。
关键词:
博客系统,JSP,JFinal
Abstract
WiththeextensiveapplicationoftheInternet,dynamicwebtechnologyhasemerged.ThistextdescribestheapplicationofJSPdynamicwebtechnologyanddevelopmenttheblogsystem.
Blogsystemismainlytoprovideuserswithpublishedarticles,browsearticles,andotherfunctions,Userscanexpressthemselvesbysomearticlesandwithothernetizenstoconductexchanges.Blogsystemofthemainarticleonthedigitalmanagement,information,intelligence,istobreakthewayofReleasedanarticlebytraditionalnewspapersandmagazinepublished,itmakeanewwaytotry.
ThesystemisdesignedbyJAVAtechnology,backstageadoptionMySQL5.5database,andusetheJDBCtechnologytovisit.
Inthistext,itanalysistheblogsystembyfeasibilityandthedemandoftheuser.Underthemodulartheory,planninganddesignofthesystemfunctionalmodules;Inthedatabasedesign,adetaileddescriptionofthedatabasestructureanddatabaseintegrity,securitymeasures;Programmingisusedobject-orientedprogrammingdesign,systemdesignideas,backgroundforthefutureandfunctionoftheprogramindetail;Systemtesting,Analysisofthespecificcourseoftestingthekeyissuesandproposedsolutionstoachievesystemfunction.Finally,thesysteminanobjective,comprehensiveevaluation,aswellasfurtherimprovementsmade.
KeyWords:
BlogSystem,JSP,JFinal
1.绪论
1.1项目背景
随着互联网的普及,越来越多的人开始接触及认识了网络。
在互联网上博客作为一种信息传播载体,开始被越来越多的人们的所关注。
人们可以从互联网上获取自己需要的知识信息等。
在这个个性张扬的年代,人们不只是想获取知识信息等。
同时有许多人也想分享自己在生活中积累的经验。
博客作为一种新型的网络日志,很快在世界范围得到使用。
使用博客系统我们可以发表自己感兴趣的东西,而不被任何事约束。
1.2问题提出
博客(Blog)记载了我们日常发生的事情和兴趣爱好,把我们的思想和知识与他人分享、交流,同时又通过网络结识了很多志趣相投的朋友;而越来越多的专业知识的博客的出现,让我们看到了博客更多蕴涵的巨大信息的价值:
不同的博客选择不同的内容,收集和整理成为大多数人关注的专业博客——目前越来越多的人获取信息来源是一些固定的博客内容。
随着博客使用人数的增加,博客(Blog)作为一种新型的生活方式,新型的工作方式,新型的学习方式已经被越来越多的人所认知,并且在改变传统的社交网络和社会结构:
网络信息不再是虚假和不可验证的,交流和沟通更有一定的选择和方向性,单一的思想和群体智慧结合变的更加有力,个人出版变成许多人都可以实现的梦想——博客(Blog)正在影响和改变着一代人的生活。
1.3设计目的
博客用户通过前台登录后,可对自己的博客空间进行管理,包括发布自己的网络日志、收藏个人图片、和相关人员进行交流和沟通以及删除访问者发表的评论等。
因此,在具体设计实现该博客网站时,主要考虑了主流博客网站的几个主要功能:
(1)博客的注册、登录验证功能;
(2)网络用户通过关键字搜索博文功能;(3)最热门博客页面推荐浏览;(4)文章详细内容及相关评论显示;(5)博文页面访问统计;(6)博客个人文章管理维护功能;(7)博客个人文章分类管理维护功能;(8)博客个人友情链接维护功能;(9)博客个人基本信息管理维护功能;(10)网络用户写留言,博主查看留言,并回复留言;(12)最新留言显示。
2.开发工具及技术
2.1JAVA技术
2.1.1简介
Java是由SunMicrosystems公司于1995年5月推出的Java面向对象程序设计语言(以下简称Java语言)和Java平台的总称。
由JamesGosling和同事们共同研发,并在1995年正式推出。
Java最初被称为Oak,是1991年为消费类电子产品的嵌入式芯片而设计的。
1995年更名为Java,并重新设计用于开发Internet应用程序。
用Java实现的HotJava浏览器(支持Javaapplet)显示了Java的魅力:
跨平台、动态的Web、Internet计算。
从此,Java被广泛接受并推动了Web的迅速发展,常用的浏览器均支持Javaapplet。
另一方面,Java技术也不断更新。
2010年Oracle收购了SUN。
2.1.2组成
Java由四方面组成:
Java编程语言、Java文件格式、Java虚拟机(JVM)、Java应用程序接口(JavaAPI)
2.1.3优势
与传统程序不同,Sun公司在推出Java之际就将其作为一种开放的技术。
全球数以万计的Java开发公司被要求所设计的Java软件必须相互兼容。
“Java语言靠群体的力量而非公司的力量”是Sun公司的口号之一,并获得了广大软件开发商的认同。
这与微软公司所倡导的注重精英和封闭式的模式完全不同。
Sun公司对Java编程语言的解释是:
Java编程语言是个简单、面向对象、分布式、解释性、健壮、安全与系统无关、可移植、高性能、多线程和动态的语言。
Java平台是基于Java语言的平台。
这样的平台非常流行。
因此微软公司推出了与之竞争的.NET平台以及模仿Java的C#语言。
Java是功能完善的通用程序设计语言,可以用来开发可靠的、要求严格的应用程序。
2.2JSP技术
2.2.1介绍
JSP技术使用Java编程语言编写类XML的tags和scriptlets,来封装产生动态网页的处理逻辑。
网页还能通过tags和scriptlets访问存在于服务端的资源的应用逻辑。
JSP将网页逻辑与网页设计和显示分离,支持可重用的基于组件的设计,使基于Web的应用程序的开发变得迅速和容易。
Web服务器在遇到访问JSP网页的请求时,首先执行其中的程序段,然后将执行结果连同JSP文件中的HTML代码一起返回给客户。
插入的Java程序段可以操作数据库、重新定向网页等,以实现建立动态网页所需要的功能。
JSP与JavaServlet一样,是在服务器端执行的,通常返回给客户端的就是一个HTML文本,因此客户端只要有浏览器就能浏览。
JSP的1.0规范的最后版本是1999年9月推出的,12月又推出了1.1规范。
目前较新的是JSP1.2规范,JSP2.0规范的征求意见稿也已出台。
JSP页面由HTML代码和嵌入其中的Java代码所组成。
服务器在页面被客户端请求以后对这些Java代码进行处理,然后将生成的HTML
页面返回给客户端的浏览器。
JavaServlet是JSP的技术基础,而且大型的Web应用程序的开发需要JavaServlet和JSP配合才能完成。
JSP具备了Java技术的简单易用,完全的面向对象,具有平台无关性且安全可靠,主要面向因特网的所有特点。
自JSP推出后,众多大公司都支持JSP技术的服务器,如IBM、Oracle、Bea公司等,所以JSP迅速成为商业应用的服务器端语言。
JSP可用一种简单易懂的等式表示为:
HTML+Java+JSP标记=JSP。
2.2.2JSP与MVC
JSP把表现层从控制层和数据层彻底分离出来了,从而方便开发人员只去管理后台实现而不需要去关注和前端的交互。
而前端设计师可以更方便的只考虑前端而不用等后端工程师开发完就可以同时设计前端。
这样大大节省了开发周期。
JSP是MVC企业开发更好的表现方式。
2.2.3技术强势
一次编写,到处运行。
除了系统之外,代码不用做任何更改。
系统的多平台支持。
基本上可以在所有平台上的任意环境中开发,在任意环境中进行系统部署,在任意环境中扩展。
相比ASP/.net的局限性是显而易见的。
强大的可伸缩性。
从只有一个小的Jar文件就可以运行Servlet/JSP,到由多台服务器进行集群和负载均衡,到多台Application进行事务处理,消息处理,一台服务器到无数台服务器,Java显示了一个巨大的生命力。
JSP(4)多样化和功能强大的开发工具支持。
这一点与ASP很像,Java已经有了许多非常优秀的开发工具,而且许多可以免费得到,并且其中许多已经可以顺利的运行于多种平台之下。
支持服务器端组件。
web应用需要强大的服务器端组件来支持,开发人员需要利用其他工具设计实现复杂功能的组件供web页面调用,以增强系统性能。
JSP可以使用成熟的JAVABEANS组件来实现复杂商务功能。
2.3JFinal框架
2.3.1介绍
JFinal是基于Java语言的极速web开发框架,其核心设计目标是开发迅速、代码量少、学习简单、功能强大、轻量级、易扩展、Restful。
在拥有Java语言所有优势的同时再拥有ruby、python等动态语言的开发效率。
2.3.1特点
(1)MVC架构,设计精巧,使用简单
(2)遵循COC原则,零配置,无xml
(3)独创Db+Record模式,灵活便利
(4)ActiveRecord支持,使数据库开发极致快速
(5)自动加载修改后的java文件,开发过程中无需重启webserver
(6)AOP支持,拦截器配置灵活,功能强大
(7)Plugin体系结构,扩展性强
(8)多视图支持,支持FreeMarker、JSP、Velocity
(9)强大的Validator后端校验功能
(10)功能齐全,拥有struts2的绝大部分功能
(11)体积小仅248K,且无第三方依赖
2.4Eclipse
2.4.1介绍
图2-1Eclipse进入
虽然大多数用户很乐于将Eclipse当作Java集成开发环境(IDE)来使用,但Eclipse的目标却不仅限于此。
Eclipse还包括插件开发环境(Plug-inDevelopmentEnvironment,PDE),这个组件主要针对希望扩展Eclipse的软件开发人员,因为它允许他们构建与Eclipse环境无缝集成的工具。
由于Eclipse中的每样东西都是插件,对于给Eclipse提供插件,以及给用户提供一致和统一的集成开发环境而言,所有工具开发人员都具有同等的发挥场所。
这种平等和一致性并不仅限于Java开发工具。
尽管Eclipse是使用Java语言开发的,但它的用途并不限于Java语言;例如,支持诸如C/C++、COBOL、PHP等编程语言的插件已经可用,或预计将会推出。
Eclipse框架还可用来作为与软件开发无关的其他应用程序类型的基础,比如内容管理系统。
基于Eclipse的应用程序的一个突出例子是IBMRationalSoftwareArchitect,它构成了IBMJava开发工具系列的基础。
2.4.2快捷方式
Eclipse的快捷键,熟悉快捷键可以帮助开发事半功倍,节省更多的时间来用于做有意义的事情。
Ctrl+1快速修复(最经典的快捷键,就不用多说了)
Ctrl+D:
删除当前行
Ctrl+Alt+↓复制当前行到下一行(复制增加)
Ctrl+Alt+↑复制当前行到上一行(复制增加)
Alt+↓当前行和下面一行交互位置(特别实用,可以省去先剪切,再粘贴了)
Alt+↑当前行和上面一行交互位置(同上)
Alt+←前一个编辑的页面
Alt+→下一个编辑的页面(当然是针对上面那条来说了)
Alt+Enter显示当前选择资源(工程,or文件or文件)的属性
Shift+Enter在当前行的下一行插入空行(这时鼠标可以在当前行的任一位置,不一定是最后)
Shift+Ctrl+Enter在当前行插入空行(原理同上条)
Ctrl+Q定位到最后编辑的地方
Ctrl+L定位在某行(对于程序超过100的人就有福音了)
Ctrl+M最大化当前的Edit或View(再按则反之)
Ctrl+/注释当前行,再按则取消注释
Ctrl+O快速显示OutLine
Ctrl+T快速显示当前类的继承结构
Ctrl+W关闭当前Editer
Ctrl+K参照选中的Word快速定位到下一个
Ctrl+E快速显示当前Editer的下拉列表(如果当前页面没有显示的用黑体表示)
Ctrl+/(小键盘)折叠当前类中的所有代码
Ctrl+×(小键盘)展开当前类中的所有代码
Ctrl+Space代码助手完成一些代码的插入(但一般和输入法有冲突,可以修改输入法的热键,也可以暂用Alt+/来代替)
Ctrl+Shift+E显示管理当前打开的所有的View的管理器(可以选择关闭,激活等操作)
Ctrl+J正向增量查找(按下Ctrl+J后,你所输入的每个字母编辑器都提供快速匹配定位到某个单词,如果没有,则在stutesline中显示没有找到了,查一个单词时,特别实用,这个功能Idea两年前就有了)
Ctrl+Shift+J反向增量查找(和上条相同,只不过是从后往前查)
Ctrl+Shift+F4关闭所有打开的Editer
Ctrl+Shift+X把当前选中的文本全部变味小写
Ctrl+Shift+Y把当前选中的文本全部变为小写
Ctrl+Shift+F格式化当前代码
Ctrl+Shift+P定位到对于的匹配符(譬如{})(从前面定位后面时,光标要在匹配符里面,后面到前面,则反之)
下面的快捷键是重构里面常用的,本人就自己喜欢且常用的整理一下(注:
一般重构的快捷键都是Alt+Shift开头的了)
Alt+Shift+R重命名(是我自己最爱用的一个了,尤其是变量和类的Rename,比手工方法能节省很多劳动力)
Alt+Shift+M抽取方法(这是重构里面最常用的方法之一了,尤其是对一大堆泥团代码有用)
Alt+Shift+C修改函数结构(比较实用,有N个函数调用了这个方法,修改一次搞定)
Alt+Shift+L抽取本地变量(可以直接把一些魔法数字和字符串抽取成一个变量,尤其是多处调用的时候)
Alt+Shift+F把Class中的local变量变为field变量(比较实用的功能)
Alt+Shift+I合并变量(可能这样说有点不妥Inline)
Alt+Shift+V移动函数和变量(不怎么常用)
Alt+Shift+Z重构的后悔药(Undo)
2.4.3安装使用过程
拷贝Eclipse文件到任意目录,如果你没有配置jdk环境变量则启动Ecplise程序会报图2-2错误
图2-2错误提示
配置jdk环境变量,下载jdk1.6.0_10并解压。
右击我的电脑,点击属性打开如图2-3
图2-3高级系统设置
点击高级系统设置,进入如图2-4
图2-4系统属性
点击环境变量进入如图2-5
图2-5环境变量
点击下面的新建如图2-6
图2-6新建系统变量
1.添加变量名:
JAVA_HOME,变量值:
D:
\deviskaifa\jdk1.6.0_10(这是我的jdk目录);
2.变量名:
CLASSPATH,变量值:
.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\tools.jar
3.在下面找到PATH变量名在后面追加;
%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;D:
\deviskaifa\mysql55\bin
到此JDK环境变量配置完成。
重新打开Eclpise如进入图2-1(说明配置成功过)
2.5Tomcat
2.5.1介绍
图2-7TomcatLogo
Tomcat服务器是一个免费的开放源代码的Web应用服务器,属于轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试JSP程序的首选。
对于一个初学者来说,可以这样认为,当在一台机器上配置好Apache服务器,可利用它响应对HTML(标准通用标记语言下的一个应用。
)页面的访问请求。
实际上Tomcat部分是Apache服务器的扩展,但它是独立运行的,所以当你运行tomcat时,它实际上作为一个与Apache独立的进程单独运行的。
诀窍是,当配置正确时,Apache为HTML页面服务,而Tomcat实际上运行JSP页面和Servlet。
另外,Tomcat和IIS等Web服务器一样,具有处理HTML页面的功能,另外它还是一个Servlet和JSP容器,独立的Servlet容器是Tomcat的默认模式。
不过,Tomcat处理静态HTML的能力不如Apache服务器。
目前Tomcat最新版本为8.0.0-RC1(alpha)Released。
Tomcat很受广大程序员的喜欢,因为它运行时占用的系统资源小,扩展性好,支持负载平衡与邮件服务等开发应用系统常用的功能;而且它还在不断的改进和完善中,任何一个感兴趣的程序员都可以更改它或在其中加入新的功能。
2.5.2Eclipse中安装Tomcat
图2-8Eclipse设置tomcat
如图2-8右击Servers的空白处,点击new->server弹出图2-9
图2-9设置hostName
点击图2-9中的Apache下拉选择Tomcatv6.0Server,如图2-10
图2-10添加Tomcat版本
点击Add...选择tomcat文件夹,点击Finish,安装完成
2.6MySQL
2.6.1介绍
图2-11MySQLLogo
MySQL是一个开放源码的小型关联式数据库管理系统,开发者为瑞典MySQLAB公司。
MySQL被广泛地应用在Internet上的中小型网站中。
由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了MySQL作为网站数据库。
2.6.1特点
1.使用核心线程的完全多线程。
这意味着它能很容易地利用多CPU(如果有)。
2.支持C、C++、Eiffel、Java、Perl、PHP、Python、和TCL API等客户工具和API。
3.可运行在不同操作系统平台上。
4.支持多种列类型:
1、2、3、4、和8字节长度的有符号/无符号整数、FLOAT、DOUBLE、CHAR、VARCHAR、TEXT、BLOB、DATE、TIME、DATETIME、TIMESTAMP、YEAR、SET和ENUM类型。
5.利用一个优化的一遍扫描多重联结(one-sweepmulti-join)非常快速地进行联结(join)。
6.在查询的SELECT和WHERE部分支持全部运算符和函数,例如:
mysql>SELECTCONCAT(first_name,"",last_name)FROMtbl_name
WHEREincome/dependents>10000ANDage>30;
7.通过一个高度优化的类库实现SQL函数库并且像他们能达到的一样快速,通常在查询初始化后不应该有任何内存分配。
8.全面支持SQL的GROUPBY和ORDERBY子句,支持聚合函数(COUNT()、COUNT(DISTINCT)、AVG()、STD()、SUM()、MAX()和MIN())。
9.支持ANSISQL的LEFTOUTERJOIN和ODBC语法,你可以在同一查询中混用来自不同数据库的表。
10.一个非常灵活且安全的权限和口令系统,并且它允许基于主机的认证。
口令是安全的,因为当与一个服务器连接时,所有的口令传送被加密。
11.ODBCforWindiws95。
所有的ODBC2.5函数和其他许多函数。
例如,你可以
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 毕业设计 王纪兵