持续创作,加速成长!这是我参与「掘金日新计划 · 6 月更文挑战」的第32天,点击查看活动详情
1 绪论
1.1 课题背景
在科学技术不断地发展与进步的同时,网络也从各个方面慢慢改变着人们的生活,在当今的时代,我们的生活与网络密不可分,网络已然成为我们生活中不能缺乏的部分。比如:通过网上学习、网上购物等。而文章作为传播信息的一种途径,也需要与网络结合起来,提供网上文章浏览、发布系统供人们使用,人们在任何时间、地点只要上网即可浏览信息。在减少纸质书籍的印刷的同时也节省了资源。
传统的网络开发是基于页面、服务器端数据传输的模式,把网络表示层建立于html页面。随着信息技术的不断发展,这样的页面已经不能满足网络用户的需求了,现在,用户希望有更好的体验,同时,管理员也希望有更方便、快捷的管理。为了能够达到用户、管理员所期待的效果,我们使用jsp动态网页来实现发布系统,带给用户、管理员更好的体验。
1.2 研究现状及发展趋势
从国内外发展经验来看,信息系统可以不仅仅局限于文本、数值,使用图像、视频、声音等多种媒体可以丰富信息系统。使信息系统具有更好的效果、更好的交互性、更大的使用范围。信息的传播是指信息从发送到接收的过程。有三个要素在这个过程中:发送者、接收者和传播渠道。一般来说,传播渠道有两种:单向、双向,单向传播是指发送者传递、发送信息,不关心接收者的反馈;双向传播是指发送者接收接收者的反馈,接受者和发送者会有互动。本系统作为信息发布系统,需要与用户有交互的作用,故使用的传播渠道应该是双向的。
随着信息管理系统发展的普及,功能也越来越完善,所以要引进先进的技术来让它具有更大的优势,本文使用了JQuery、JS、CSS等前端语言来优化用户页面,使用MVC的架构、SSH的框架完整后台代码。系统采用了B/S的架构模式,将浏览器作为客户端,用户只需浏览器即可使用该系统,不需要额外下载客户端。
目前该系统有了好的发展趋势,随着信息技术的不断发展,我相信文章发布系统有更好的前景,能给人们带来更多的便利。
1.3 课题意义与目的
文章发布系统的实现减轻了管理员更新维护文章的工作量,通过该系统,将管理员的工作简化了,现在管理员只需录入文字和上传图片,就可以发布文章,缩短了文章的更新时间,方便了管理员管理维护。
文章发布系统是一个集文章发布、评论、留言于一体的管理系统,游客可以搜索相关文章,游客注册后可以登录网站属于文章进行评论以及对网站进行留言,管理员可以登录进入管理员中心对网站信息进行管理,对文章进行发布以及管理、对用户评论进行管理,对用户留言进行回复,和用户进行互动。极大的方便的网民,是广大网民点开浏览器,输入网址,即可浏览相关信息。
1.4 研究内容
本文设计系统,首先从技术、经济、操作、法律进行可行性分析。在确定系统可行的情况下,对系统用进行需求分析,确定系统的功能模块,然后设计数据库,编写代码实现详细系统功能模块,最后对完成的系统进行测试。在该系统中,前台使用CSS、JQuery等技术使界面更美观,交互性更好,而后台则是使用了SSH框架,方便代码的管理与维护。
人们普遍认为一个软件功能多就好,往往忽略了在系统功能增多的同时,也会给系统的用户带来很多麻烦。在大部分情况下,系统用户都是非专业人员,如果将系统设计的过于复杂,就需要花时间进行对这些使用者进行培训,无形中增加了系统成本。同时系统中的一些功能使用次数较少,这些功能性价比低,可以适当的进行删减,减少系统成本。因此,在功能确定、选择上,更看重的应该是合适,不要盲目追求系统的功能,系统做到简洁、实用即可。
1.5 论文组织
本文有五个章节组成:
第一章:绪论。介绍课题背景、当前研究现状及发展趋势、开设此课题意义与目的以及本文主要研究的内容。
第二章:开发环境和工具介绍。介绍了开发工具MySql,Myeclipes的使用、SSH框架的原理、MVC模型的构成以及B/S模型等的实现原理。
第三章:系统分析。从可行性分析开始到需求分析,然后进行各个模块详细分析与设计以及数据库的设计。
第四章:系统实现。根据各模块功能,编写代码完成具体实现。
第五章:系统测试。系统完成后,对系统进行完整测试。
最后对本次毕业设计进行工作总结,分析论文完成情况并对系统做出总体评价。
2 开发工具和技术介绍
2.1 开发工具
2.1.1 Myeclipse简介
MyEclipse,是一个十分优秀的用于开发Java[1]。它的功能强大,支持广泛,支持多种开源产品。它的工作平台是企业级,它扩展了EclipseIDE。利用MyEclipes可以方便数据库以及应用程序的组合,提高我们的效率。此外,它还具有模块化的结构,让我们可以单独的对某一模块进行扩展和升级。
总而言之,MyEclipes拥有功能强大的开发环境,良好的兼容性。
2.1.2 MySQL简介
MySQL通常运用于小型企业以及小型数据系统。MySQL数据库因为具有体积小、总体拥有成本低、速度快、源码开放等优势受到了热捧。
MySQL是关系数据库管理系统,它没有将数据全都放入一个仓库中,而是将数据分别写入不同表中,使数据更灵活,从而也提高了数据库的查询速度。
MySQL数据库有以下优点:
1.支持多种数据库;
2.支持多线程,充分利用CPU资源;
3.优化SQL的算法,提高查询的速度;
4.提供JDBC等多种数据库连接途径;
5.提供用于管理、检查、优化数据库操作的管理工具;
6.支持比较大型的数据库,对于几万条记录的数据库可进行同时处理;
7.使用了标准的SQL数据语言形势;
2.1.3 Tomcat简介
Tomcat是由Apache、Sun 等公司及部分个人共同开发出来的。因其技术的先进、性能的稳定、免费的使用受到了Java使用者的喜爱,同时得到了一些软件开发商的支持与鼓励。Tomcat是当前比较流行的WEB服务器。
Tomcat 服务器属于轻量级的应用服务器,在一些中小型系统中被普遍使用,它是开发和调试JSP 程序的首选。实际上Tomcat是独立运行的,当运行tomcat 时,它是作为一个单独的进程来运行的。
2.2 开发技术
2.2.1 JSP技术简介
JSP把网页设计显示与逻辑分离,它支持基于组件设计的重用,极大地方便了Web应用程序的开发。
在遇到请求访问JSP网页时,Web服务器对其中的程序首先执行,返回给客户执行的结果以及JSP文件中的HTML代码。操作数据库以及网页重新定向可以由其中插入的Java代码来实现,从而达到实现动态网页需求的功能。
JSP通常执行在服务器端,返回HTML文本到客户端,使用户在浏览器上就可浏览相关信息。
2.2.2 Servlet技术简介
Servlet是应用于服务器端的Java程序,独立于协议和平台。它担当服务器响应与客户请求的中间层。 它与启动Java应用程序通过命令行的方式不同,加载是由Web服务器进行。
Servlet生命周期:Servlet加载、实例化、服务、销毁
init():Servlet生命周期中,init()方法只执行一次,在装入Servlet是,init()方法就开始执行。
service():对客户的请求进行响应,一般使用doGet()和doPost()方法来处理请求。
destroy():destroy()方法执行一次,在服务器端卸载或者停止时就执行此方法。
2.2.3 SSH框架整合技术简介
SSH 即 Struts +Spring + Hibernate三种技术组合而成的框架。
SSH框架的优势:
1.体现了MVC三层架构的思想,极大的减轻了软件开发技术人员为解决问题所付出的精力和所承担的负担,减少了开发时间,同时也有助于新需求的开发。图2-1为MVC模型图:
图2-1 MVC模型图
2.具有可扩展性,SSH有强大的支持,在框架扩展性方面比较优秀,对于一些特殊的应用可以进行插播,解决了部分由于技术问题而实现不完整的功能。
3.具有可维护性,新需求在系统中总是经常出现,三层构架合理的分离,有效的降低了修改需求的风险。伴随着新老系统的更新,一些系统需要进行重构,ssh构架因为其兼容性较好使得重构成功率高了许多。
4.具有解耦性,软件产品的需求总是在不断的改变。客户的需求,在开发过程中慢慢深入中,变得更加清晰,准确。因此,经常在软件开发进行一段时间后,由于需求的变更,软件的开发过程也不得不进行调整。而ssh框架,因其具有良好的解耦性,使用了大量的接口编程,在软件需求变更、软件开发需要调整的时候,软件开发中部分发生改变但是其它部分依然不会发生改变,可以减轻程序员的工作量,有利于代码的维护与重写。
2.2.4 B/S模式简介
B/S(Browser/Server)结构即浏览器和服务器结构。B/S有开发简单、方便维护、分布性强的特点。B/S是对C/S架构的改进,在这种架构下,浏览器是作为客户端出现的,这种方式减轻了电脑的压力,只需装一个浏览器应用程序即可访问多种后台页面,这样减少了后期对客户端进行的维护,极大地方便了用户。