基于SSH的图书点评网站的设计与实现毕业论文

上传人:无*** 文档编号:62433419 上传时间:2022-03-14 格式:DOC 页数:45 大小:589.50KB
收藏 版权申诉 举报 下载
基于SSH的图书点评网站的设计与实现毕业论文_第1页
第1页 / 共45页
基于SSH的图书点评网站的设计与实现毕业论文_第2页
第2页 / 共45页
基于SSH的图书点评网站的设计与实现毕业论文_第3页
第3页 / 共45页
资源描述:

《基于SSH的图书点评网站的设计与实现毕业论文》由会员分享,可在线阅读,更多相关《基于SSH的图书点评网站的设计与实现毕业论文(45页珍藏版)》请在装配图网上搜索。

1、哈尔滨科学技术职业学院专科学生毕业论文论文题目:基于SSH的图书点评网站的设计与实现学 院:哈尔滨科学技术职业学院理工系年 级:2 01 1 级专 业:计算机网络姓 名:魏 彩 凤学 号:0 5指导教师:熊国良2014 年 5月 10日摘要随着教育和商业信息化的快速发展,互联网逐渐的成为了人们日常生活中不可或缺的东西。这也是在未来教育和商业的发展中所走的必然趋势。现在伴随着图书文化的再次兴起,各种图书网站也都相应出现。其中网上的图书阅读和评价占据了主导的地位,相对于传统的阅读模式而言,读书点评网站的设计与实现旨在实现读者能够在不浪费更多的人力和时间的前提下,使得读者能够在互联网上快捷方便的找到

2、自己所需要的图书并进行相应的点评。本网站的设计在综合分析了当前的读者的喜好以及提供阅读场所的阅读模式的基础上,采用了JAVA当前开发中比较成熟的框架模式,即Struct2+Spring+Hibernate框架进行设计实现。以MyEclipse作为开发工具,采用Tomcat服务器技术,使用MySQL作为后台数据库。图书点评网站是一个信息交流平台,可以和其他用户之间进行交流以达到资源共建与共享。整个系统从符合界面友好、操作简便、灵活、实用、安全的要求出发,完成了注册登录、图书管理、博文管理、图书和博文点评功能、好友管理、搜索与统计、好友留言、超级管理员等功能。本网站的设计本着“资源共建与共享”和“

3、一切为了读者”,的宗旨,努力打造一个供广大读者进行学习交流和心灵沟通的网络平台。关键词Struct2、Spring、Hibernate、图书点评网站Abstract With the rapid development of information technology education and business, the Internet gradually became the indispensable things in Peoples Daily life. This is education and business in the future in the developmen

4、t of the inevitable trend. Now along with books culture rise again, all kinds of books are corresponding to. Which online book reading and evaluation occupies the dominant position, compared with the traditional model of reading, reading review websites designed to realize the design and implementat

5、ion of the reader to do not waste more manpower and time under the premise of enables readers to quick and convenient to find what they need on the Internet book review accordingly.This website design in comprehensive analysis of the current readers preferences as well as providing reading place rea

6、ding model, on the basis of using the JAVA compare mature framework in the current development pattern, namely Struct2 + Spring + Hibernate framework design and implementation. Eclipse as development tools, use the Tomcat server technology, using MySQL database as the background. Book review site is

7、 an information exchange platform, can communicate with other users in order to achieve resources sharing and sharing. From the whole system in line with the friendly interface, easy operation, flexible, practical, safety requirements, completed the registered login, book management, post management

8、, book and post comments on function, management, search and statistics and message friends and super administrator, etc. This website design in line with the resource and sharing and all for the reader, the objective, efforts to build a for readers to learn communication and spiritual communication

9、 network platform.Key wordsStruct2,Spring, Hibernate, Book Review Sites 目录摘要iAbstractii第一章 绪论11.1课题背景11.2 目的和意义21.3 系统设计思想21.4 系统开发环境与运行环境31.5 本章小结4第二章 系统分析52.1 需求分析52.2 可行性分析62.3 本章小结7第三章 系统相关技术简介73.1 Struts技术介绍83.1.1 Struts的原理83.1.2 Struts的优缺点93.2 Spring技术介绍93.2.1 Spring的原理103.2.2 Spring的优缺点103.3

10、Hibernate技术介绍113.3.1 Hibernate的原理113.3.2 Hibernate的优缺点123.4 本章小结12第四章 系统设计与实现134.1 系统概要设计144.2 系统详细设计与实现154.2.1 注册登录模块164.2.2 书籍管理模块174.2.3 点评管理模块184.2.4 搜索与统计模块194.2.5 博文管理模块204.2.6 书友管理模块204.3 数据库设计与实现214.3.1 数据库概念结构设计224.3.2 数据库逻辑结构设计与实现264.4本章小结30第五章 系统测试315.1测试的概念315.2测试项目325.2.1测试方法325.2.2系统单元

11、测试325.2.3系统功能测试335.2.4系统确认测试365.3 本章小结37结论38参考文献39致谢1第一章 绪论随着网络时代的深入,网络图书工作也发生了巨大的变化,尤其是信息网络化和文献信息资源网络化,更是未来网络图书实现高科技化的必由之路,所以,这对于新一代的网络图书平台来说面临着更大的挑战。自2000年互联网泡沫破灭后,我国网络迎来了蓬勃发展的快速发展时期,网络已逐步融入到更多的传统行业之中,其价值和作用不言而喻。就网络图书而言,电子图书馆已经是网络时代发展的客观需求。虽然说每个地方都有大型或者是小型的图书馆,但是有了网络人们更愿意在网上直接阅评。图书的网络化建设正逐步走向实用化阶段

12、。在建设的过程中我们认识一些认知误区、缺乏系统规划、数据库建设等一些不足之处。我们弥补这些不足之处,使得图书在真正意义上的达到读书网络资源共享。图书点评网站就是含有海量的读书信息,并且能够提供用户自由的发表自己的文章和意见的交流平台。 用户登录后只需要通过键盘输入需要的信息即可获得所需读书和文章信息,当用户发现有与自己兴趣相投或者其他友好迹象的时候可以添加对方为好友,通过给好友留言的方式在平台上进行沟通。 作为一个独立的图书点评系统,它的功能充分体现着读者能够进行独立学习、开放学习、寻找乐趣这些观念,方便读者寻找各种读书。本图书点评系统旨在把图书文明更进一步的推广给广大读者和作者,用当今的网络

13、技术代替传统的阅读书本展示给消费者。模糊查询模块让读者更加容易找到所需内容进行学习和交流。从网站的可扩展性方面考虑,我们在网站中加入了对图书的添加、删除、修改功能。有了这个功能模块,将给予读者带来很大的方便。1.1 课题背景有关网络图书的互联网络化建设从20世纪60年代美国等发达国家开始,他们提出了图书馆集成管理系统、微机局域网、计算机管理等建设基本方向。70年代逐步实现:联机局域网广域网。80年代初步形成了联机检索在一定范围内实现资源共享。特别是90年代以后基于互联网络的发展,网络图书的管理进入了虚拟和电子的建设,而网络图书平台的兴起引起了人们的高度重视和重点建设。在我国图书馆的各个历史发展

14、阶段,“资源共建与共享”, “一切为了读者”,始终是一贯的宗旨。然而,传统的资源共建与共享只限于图书馆之间对于印刷型文献的互惠互借、协调采购等有限的互补分享,作用有限。现代的资源共享则必须借助于计算机网络技术,打破地域和机构的界限,超越时间和空间的约束,追求在任何时间、任何地方都能够访问到任何图书馆的数字化资源,即为读者提供一个资源共享的“自由空间”。网络环境,促使图书馆对“资源共建与共享” 这一概念产生了革命性的再认识。以网络技术、计算机技术、多媒体技术为核心的信息技术不断取得突破,强烈冲击着人们的生活,图书馆以及图书馆人也承受着这种冲击,在这种新的形势下越来越多的图书馆也加入了互联网,越来

15、越多的图书网站也随之诞生。这些分散的图书与信息资源联系在一起,形成了一个庞大的网络信息资源库,为文献资源共享提供了可能。因此不断加强图书网络化建设,实现图书与图书之间、图书与信息资源之间、图书与读者之间信息交流的网络是未来发展的必然趋势,也是实现文献资源共享的坚实基础于小燕.浅谈图书馆网络化与信息资源共享J.图书馆学刊.2002.01,12(3):3-4。1.2 目的和意义本图书点评系统旨在把图书文明更进一步的推广给广大读者和作者,用当今的网络技术代替传统的阅读书本展示给消费者。它既是一个远程文献信息检索和阅读服务的平台也是一个关于各种图书交流的论坛。图书点评网站能够很好的筛选出那些优秀的图书

16、供读者阅读,并且还支持会员可以发表文章供其他用户阅读,一起来交流大家的写作技巧。图书点评网站的设计面向了广大的读者以及读书的爱好者,它提供的这个平台能够很好的实现交流互动。使读者再阅读和探讨的过程中不断的获益,它既是你的良师也是你的益友。本网站的设计本着“资源共建与共享” 和“一切为了读者” 的宗旨,努力打造一个供广大读者进行学习交流和心灵沟通的信息交流平台。1.3 系统设计思想本系统的设计特点是具有良好的用户界面,网站各功能使用方便、清晰而灵活。软件所适应的操作系统必须易于理解并具有非常好的可移植性。网站系统的特性有:实用性、开放性、安全性、可维护性、可扩展性。实用性:网站系统从用户的需求出

17、发,以供用户使用方便快捷为第一准则。根据用户实际的需求情况,全面考虑到读者在阅读和浏览过程中可能遇到的问题,尽量想出与之相对应的解决办法。开放性:一个好的软件系统必须具有开放性,网站应该面对广大的用户,供广大用户使用和反馈,从中不断的改善本系统的问题,为了是能够给广大用户提供全面的服务。安全性:系统在开发的过程中应用各种安全手段来保护有关数据的安全,避免有些数据泄漏造成没有必要的损失。软件所在的操作系统还必须提供进程间的通信功能及可以有效地防止非法侵入保证数据安全的安全防护措施。并有强大的防病毒能力。可维护性:系统的设计要求能够及时的进行维护。通过及时的更换硬件的配置来进行硬件维护,通过设计的

18、层次结构合理性来进行软件的维护和升级。可扩展性:良好的可扩展性的目的是为了应对未来可能需要进行的修改,而造成代码被过度工程化地开发,可扩展性可以通过软件框架来实现江开耀.软件工程新书M.西安:西安电子科技大学,2008.03:23-56。1.4 系统开发环境与运行环境开发此网站所需要用到的软件环境如下: 操作系统:Windows XP/Win7/Win8。 数据库:MySQL。MySQL被广泛地应用在Internet上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,所以选择了MySQL作者为数据库管理系统 开发工具:MyEclipseMyEclipse企业级工作平

19、台(MyEclipse Enterprise Workbench ,简称MyEclipse)是对Eclipse IDE的扩展,利用它我们可以在数据库和J2EE的开发、发布,以及应用程序服务器的整合方面极大的提高工作效率。它是功能丰富的J2EE集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持HTML, Struts, JSF, CSS, Javascript, SQL, Hibernate。极大地提高了程序设计的效率,比较适合图书点评网站的开发。1.5 本章小结 本章主要介绍了基于SSH的图书点评网站实现的社会背景和意义,系统设计的目的和意义提出了开发本系统的前提,通过系统的设计思

20、想论证了图书点评系统的设计核心。 可见图书点评网站在网络图书中起到了很大的推进作用。该系统的设计思想与开发的运行环境也都是条件允许的。为了确定系统是否能够进行开发下面将讨论系统开发的需求分析和可行性分析。第二章 系统分析图书点评网站设计的思想是具有友好界面、使用方便、功能齐全、清晰而灵活、易于扩充和修改等特点的网站系统软件。图书点评网站不单纯的只是针对图书进行点评,它也是一个交流互动的平台。这样才能使本系统显得不单调,从而吸引更多的读者来关注该平台。已经注册的用户应该自己也可以发表文章,其他用户可以评价发表过的文章。用户对自己的文章有一系列的操作,用户之间可以加为好友的方式达到系统成为一个互动

21、交流平台的目的。2.1 需求分析做好需求分析是整个软件系统开发过程的首要任务,也是系统开发最关键的一个环节。系统分析的完不完整直接影响到用户的操作体验以及整个系统的功能完整性。所以要做好需求分析一定要对系统所需要解决的问题进行详细的分析,弄清楚问题的要求。建立一个新的系统之前要明确新系统的目的、范围、定义和功能所要做的所有工作,在整个需求分析的阶段它需要系统分析员确定用户的需要,明确系统的功能,把问题实例进行抽象化处理和分析。综合需求分析的方式和方法,新开发出的网站系统具有友好界面,用户操作起来方便简单、能够很容易的找到用户需求的功能。图书点评网站的实现功能应具有以上特点,它自身有海量的图书信

22、息提供给读者阅读,是用户再闲暇时能够有所阅读,若是用户对图书兴趣很浓则可以通过点评的方式来发表自己的意见或者与其他本书的读者进行点评式的交流陈新.图书管理系统设计与实现J.硅谷.2011.14,7(4):2-3。对于那些对写作有很大的兴趣的用户来讲,本系统还应该为用户提供发表文章的平台,用户可以通过发表博文的方式来展现自己的文学水平,这样的方式也能提高用户的写作水平,也可以说是一个学习的平台。 当然用户之间也是需要交流的,这样才能体现文化的多样性,为满足广大用户的需求本系统也提供了通过好友留言沟通的方式来实现用户之间的沟通。本系统还设有超级管理员的功能,能够及时对图书模块信息的更新和修改,在维

23、护系统中起到了一定的作用。在上述用户的需求的环境下,提出了图书点评网站系统的需求。2.2 可行性分析可行性分析是针对本项目的主要内容和配套条件,从技术、经济、工程等方面进行调查研究和分析比较,并对项目建成以后可能取得的经济效益和社会影响进行预测,从而提出该项目是否值得开发和如何建设的咨询意见,为项目决策提供一种综合性的系统分析方法。图书点评系统能够为用户提供快捷地查询图书和博文的内容,方便用户进行图书资料的阅读和学习,并且能够及时的进行用户之间的交流。这就摆脱了浪费时间去图书馆和书店所带来的诸多麻烦。对于图书点评系统的可行性分析将从以下三个方面进行分析研究。第一、技术可行性研究。该网站系统界面

24、友好,功能操作简单,在新系统投入使用时,只要对用户进行简单的说明,很容易操作该网站。该系统可以采用MyEclipse结合MySQL数据库来完成,涉及的SSH框架已经很成熟,完全可在要求的短时间内完成小型图书点评网站的设计和开发。第二、操作可行性研究。本系统采用Windows图形界面,使大家熟悉的Windows XP/Win7/Win8操作系统,对于使用用户而言,只需要具有一般的计算机知识人员都可以轻松上手。相信对于广大的图书爱好者不会是什么难题。而且整个系统采用友好的交互界面,简洁明了,不需要对数据库非常了解也可以熟练操作。第三、社会因素分析。就是对我们所处的政治环境、经济环境、法制环境、科技

25、环境、文化环境、语言环境、卫生环境等宏观因素的分析。图书点评网站的所有内容完全由本人独立开发完成,由于开发内容简单,并不占用太多的社会因素。并且在法律方面没有任何侵权的行为,完全符合中小型系统的开发设计规定。2.3 本章小结根据上述系统分析,图书点评网站的设计结构清晰、功能安排合理,而且使用现有JAVA技术能够进行开发,并可实现用户要求的所有功能。由于这是一个中小型系统,具有充裕的时间进行开发和设计。综合以上几个方面,无论是从技术、操作还是社会因素方面该系统都具有较高的开发可行性。所以下面即将对系统的开发的相关技术进行研究。第三章 系统相关技术简介读书点评系统采用了比较成熟的Struts2+S

26、pring+Hibernate开发框架,具有三大特色。第一,良好的可扩展性,SSH三层架构针对特殊应用时具有良好的可插拔性,避免大部分因技术问题不能实现的功能。第二,良好的可维护性,业务系统经常会有新需求,三层构架因为逻辑层和展现层的合理分离,可使需求修改的风险降低到最低。第三,优秀的解耦性,SSH三层构架,控制层依赖于业务逻辑层,但绝不与任何具体的业务逻辑组件耦合,只与接口耦合;同样,业务逻辑层依赖于DAO层,也不会与任何具体的DAO组件耦合,而是面向接口编程杨锡龙.基于SSH的多层架构设计J.阴山学刊.2006.04,6(5):3-5。3.1 Struts技术介绍MVC即Model-Vie

27、w-Controller的缩写,是一种常用的设计模式。MVC 减弱了业务逻辑接口和数据接口之间的耦合,以及让视图层更富于变化。Struts 是MVC的一种实现,它将 Servlet和 JSP 标记(属于 J2EE 规范)用作实现的一部分。Struts继承了MVC的各项特性,并根据J2EE的特点,做了相应的变化与扩展。3.1.1 Struts的原理Struts的核心是ActionSevlet,ActionSevlet的核心是Struts-config.xml。下面将从视图、控制、模型及工作流程四个方面进行介绍说明。视图:主要由JSP生成页面完成视图,Struts提供丰富的JSP 标签库: Htm

28、l,Bean,Logic,Template等,这有利于分开表现逻辑和程序逻辑。控制:在Struts中,承担MVC中Controller角色的是一个Servlet,叫ActionServlet。ActionServlet是一个通用的控制组件。这个控制组件提供了处理所有发送到Struts的HTTP请求的入口点。它截取和分发这些请求到相应的动作类(这些动作类都是Action类的子类)。另外控制组件也负责用相应的请求参数填充 Action From(通常称之为FromBean),并传给动作类(通常称之为ActionBean)。动作类实现了核心商业逻辑,它可以访问java bean 或调用EJB。最后动

29、作类把控制权传给后续的JSP 文件,后者生成视图。所有这些控制逻辑利用Struts-config.xml文件来配置。模型:模型以一个或多个java bean的形式存在。这些bean分为三类:ActionForm、Action、JavaBean or EJB。Action Form通常称之为FormBean,封装了来自于Client的用户请求信息,如表单信息。Action通常称之为ActionBean,获取从ActionSevlet传来的FormBean,取出FormBean中的相关信息,并做出相关的处理,一般是调用Java Bean或EJB等。流程:在Struts中,用户的请求一般以*.act

30、ion作为请求服务名,所有的*.action请求均被指向ActionSevlet,ActionSevlet根据Struts-config.xml中的配置信息,将用户请求封装成一个指定名称的FormBean,并将此FormBean传至指定名称的ActionBean,由ActionBean完成相应的业务操作,如文件操作,数据库操作等。每一个*.action均有对应的FormBean名称和ActionBean名称,这些在Struts-config.xml中配置。3.1.2 Struts的优缺点优点:1. 开源软件,能更深入的了解其内部实现机制。2. Taglib标记库,灵活动用,能大大提高开发效率。

31、3. 页面导航使系统的脉络更加清晰。通过一个配置文件,即可把握整个系统各部分之间的联系,这对于后期的维护有着莫大的好处。尤其是当另一批开发者接手这个项目时,这种优势体现得更加明显。 4. 提供Exception处理机制。5. 数据库链接池管理6. Struts 的Action必需是threadsafe方式,它仅仅允许一个实例去处理所有的请求。所以action用到的所有的资源都必需统一同步,这个就引起了线程安全的问题。缺点:Taglib是Struts的一大优势,但对于初学者而言,却需要一个持续学习的过程,甚至还会打乱你网页编写的习惯,但是,当你习惯了它时,你会觉得它真的很棒。Struts将MVC

32、的Controller分为三层,在获得结构更加清晰的同时,也增加了系统的复杂度。ActionForms使用不便、无法进行单元测试(StrutsTestCase只能用于集成)。3.2 Spring技术介绍Spring真正的精华是它的IOC模式实现的BeanFactory和AOP,它是一个开源的项目,而且目前非常活跃。3.2.1 Spring的原理Spring基于IOC(Inversion of Control,反向控制)和AOP的构架多层j2ee系统的框架,但它不强迫你必须在每一层中必须使用Spring,因为它模块化的很好,允许你根据自己的需要选择使用它的某,一个模块;它实现了很优雅的MVC,对

33、不同的数据访问技术提供了统一的 接口,采用IOC使得可以很容易的实现bean的装配,提供了简洁的AOP并据此实现Transcation Managment,等等。 3.2.2 Spring的优缺点优点:1. Spring能有效地组织你的中间层对象,不管你是否选择使用了EJB。如果你仅 仅使用了Struts或其他为J2EE的 API特制的framework,Spring致力于解决剩下的问题。2. Spring能消除在许多工程中常见的对Singleton的过多使用。根据我的经验,这是一个很大的问题,它降低了系统的可测试性和面向对象的程度。3. 通过一种在不同应用程序和项目间一致的方法来处理配置文件

34、,Spring能消除各种各样自定义格式的属性文件的需要。曾经对某个类要寻找的是哪个魔法般的属性项或系统属性感到不解,为此不得不去读Javadoc甚至源编码?有了Spring,你仅仅需要看看类的JavaBean属性。Inversion of Control的使用(在下面讨论)帮助完成了这种简化。4. 通过把对接口编程而不是对类编程的代价几乎减少到没有,Spring能够促进养成好的编程习惯。5. Spring被设计为让使用它创建的应用尽可能少的依赖于他的APIs。在Spring应用中的大多数业务对象没有依赖于Spring。6. 使用Spring构建的应用程序易于单元测试。7. Spring能使EJ

35、B的使用成为一个实现选择,而不是应用架构的必然选择。你能选择用POJOs或local EJBs来实现业务接口,却不会影响调用代码。8. Spring帮助你解决许多问题而无需使用EJB。Spring能提供一种EJB的替换物,它们适用于许多web应用。例如,Spring能使用AOP提供声明性事务管理而不通过EJB容器,如果你仅仅需要与单个数据库打交道,甚至不需要一个JTA实现。9. Spring为数据存取提供了一个一致的框架,不论是使用的是JDBC还是O/R mapping产品(如Hibernate)。Spring确实使你能通过最简单可行的解决办法来解决你的问题。而这是有很大缺点:使用人数不多、J

36、SP中要写很多代码、控制器过于灵活,缺少一个公用控制器。3.3 Hibernate技术介绍Hibernate使用了J2EE架构中的如下技术:JDBC、JTA、JNDI。其中JDBC是一个支持关系数据库操作的一个基础层;它与JNDI和JTA一起结合,使得Hibernate可以方便地集成到J2EE应用服务器中去。通过接口,你不仅可以存储和获得持久对象,并且能够进行事务控制。3.3.1 Hibernate的原理Hibernate有一些常用的接口,下面就主要的接口进行介绍说明。Session接口:Session接口对于Hibernate 开发人员来说是一个最重要的接口。然而在Hibernate中,实例

37、化的Session是一个轻量级的类,创建和销毁它不断地创建以及销毁Session对象,如果Session的开销太大,会给系统带来不良影响。SessionFactory 接口:这里用到了一个设计模式工厂模式,用户程序从工厂类SessionFactory中取得Session的实例。令你感到奇怪的是SessionFactory并不是轻量级的!实际上它的设计者的意图是让它能在整个应用中共享。典型地来说,一个项目通常只需要一个SessionFactory就够了,但是当你的项目要操作多个数据库时,那你必须为每个数据库指定一个SessionFactory。SessionFactory在Hibernate中实

38、际起到了一个缓冲区的作用,它缓冲了Hibernate自动生成的SQL语句和一些其它的映射数据,还缓冲了一些将来有可能重复利用的数据。Configuration 接口:Configuration接口的作用是对Hibernate进行配置,以及对它进行启动。在Hibernate的启动过程中,Configuration类的实例首先定位映射文档的位置,读取这些配置,然后创建一个SessionFactory对象。Query和Criteria接口:Query接口让你方便地对数据库及持久对象进行查询,它可以有两种表达方式:HQL语言或本地数据库的SQL语句。Query经常被用来绑定查询参数、限制查询记录数量,

39、并最终执行查询操作。Criteria接口与Query接口非常类似,它允许你创建并执行面向对象的标准化查询。 值得注意的是Query接口也是轻量级的,它不能在Session之外使用。Callback 接口:当一些有用的事件发生时例如持久对象的载入、存储、删除时,Callback接口会通知Hibernate去接收一个通知消息。一般而言,Callback接口在用户程序中并不是必须的,当在项目中创建审计日志时,你可能会用到它。3.3.2 Hibernate的优缺点优点:Hibernate是JDBC的轻量级的对象封装,它是一个独立的对象持久层框架。它可以用在任何JDBC可以使用的场合,例如Java应用程

40、序的数据库访问代码,DAO接口的实现类,甚至可以是BMP里面的访问数据库的代码。Hibernate是一个和JDBC密切关联的框架,所以Hibernate的兼容性和JDBC驱动,和数据库都有一定的关系,但是和使用它的Java程序,和App Server没有任何关系,也不存在兼容性问题。Hibernate不能用来直接和Entity Bean对比,只有放在整个J2EE项目的框架中才能比较。并且即使是放在软件整体框架中来看,Hibernate是JDBC的替代者,而不是Entity Bean的替代者。Hibernate是一个开放源代码的对象关系映射框架,它对JDBC进行了非常轻量级的对象封装,使得Jav

41、a程序员可以随心所欲的使用对象编程思维来操纵数据库。Hibernate可以应用在任何使用JDBC的场合。Hibernate 使用 Java 反射机制 而不是字节码增强程序来实现透明性。Hibernate 的性能非常好,因为它是个轻量级框架。 映射的灵活性很出色。它支持各种关系数据库,从一对一到多对多的各种复杂关系。缺点:Hibernate 在小型的项目中的开发效率比较低并且限制您所使用的对象模型。但在关系层比较复杂的项目中开发效率高的惊人。内存消耗也比较高,采用JDBC的架构无疑是最省内存的。3.4 本章小结本章的内容说明了Struts2+Spring+Hibernate开发框架的原理和优缺点

42、,总体上说优点多于缺点,所以图书点评网站的设计就是采用这个框架的开发模式,每个功能模块全部都符合这个框架的流程,只为全力打造一个具有良好的可扩展性、良好的可维护性和优秀的解耦性的网上阅读交流平台裴芳.SSH框架在图书管理系统中的应用J.软件导刊.2011.02,7(2):2-3。既然系统的开发技术和框架已经明确,那么下面就将对系统的具体设计进行讨论。第四章 系统设计与实现系统设计是新系统的物理设计阶段,系统设计是在系统分析的基础上由抽象化到具体化的过程。根据系统分析阶段所确定的新系统的逻辑模型、功能要求,在开发的环境条件下,设计出一个能在计算机网络环境上实施的方案,即建立新系统的物理设计模型。

43、 为下一阶段系统实施提供必要的硬件设备和技术资料,网站设计的要求应符合实用性、灵活性、可靠性、经济性、和可维护性的要求。根据系统需求分析,结合系统的功能特点,图书点评系统采用SSH框架模式进行开发,该模式同时具有开发时间短,成本较低,架构整齐、可扩展性、平台移植性好等优点。其开发主要包括系统概要设计、系统详细设计两个方面。对于前者要求应从用户的需求出发来整合系统需要那些功能。而对于后者则要求对各个功能模块进行详细的设计分析,模块之间有良好的耦合性,建立的数据有一致性、完整性强和数据安全性高等特点Shari Lawrenece Pfleeger. Software Engineering The

44、rory and PracticeM.London:Prentice Hall,2009.02:100-125。4.1 系统概要设计本系统的前台和后台采用MyEclipse作为开发工具,后台数据库系统采用数据库系统MySQL,系统的运行平台为Windows XP/Win7/Win8。根据系统分析的结果以及用户的调查可以确定一些模块,其他的模块开发可以从以后的反馈中进行增加。超级管理员能够管理系统的一些书籍,使得书籍应在相应的列表中显示,使得界面更加得体。用户则是使用系统进行系统的一些功能操作。综上所述可得系统的顶层结构图如图4-1所示。图4-1 图书点评系统顶层结构图图书管理系统主要实现三个大

45、的方面即图书信息的管理与点评、博文信息的管理与点评和通过留言的方式进行好友之间的沟通。根据上述的系统分析,读书点评系统力争打造一个具有传统的读书理念,但也突破传统的沟通方式的一个平台。系统的业务流程图如图4-2所示。图4-2 图书点评系统业务流程图4.2 系统详细设计与实现系统的详细设计把各个的功能模块进行分解设计,说明一个软件系统各个层次中的功能模块逻辑关系,其设计思想是,采用自顶向下、逐层分解的方法,先给出总的模块功能,再逐层分解,使其分为多个大小适当,功能明确,具有一定独立性且容易实现的模块,从而把一个复杂的系统设计转变成为多个简单模块的设计张海藩.软件工程M.北京:清华大学出版社,20

46、10.07:44-61。图书点评系统设计指导思想:功能完善,界面友好大方,操作方便易懂,具有很好的可扩展性。作为一个独立的图书点评系统,它的功能充分体现着读者能够进行独立学习、开放学习、寻找乐趣这些观念,方便读者寻找各种读书。根据前面分析可知,本系统的模块大体分为七块,即:注册登录、书籍管理、点评管理、博文管理、书友管理、等模块。系统模块结构如图4-3所示。图4-3 图书点评系统模块结构图4.2.1 注册登录模块游客可注册成为本系统的用户,通过用户登录的方式享受更多的功能体验。另外本系统令设置了超级管理员,即通过超级管理员的方式可直接进行一些系统的维护,具体维护就是即将提到的书籍管理模块。注册

47、登录的业务流程图如图4-4所示:图4-4 注册登录模块流程图4.2.2 书籍管理模块书籍管理可以对其分类显示、添加书籍、修改书籍等功能。对海量的书籍进行系统化的分类便于读者更迅速的找到自己所需的图书进行在线阅读和在线购买。并且管理员可以实时更新图书。书籍管理的业务流程图如图4-5所示:图4-5 书籍管理模块流程图4.2.3 点评管理模块点评管理有追加点评、删除点评、点评回复等功能。这是一个核心的功能,图书的评价的好坏和销售的好坏主要是由读者进行评价后的反馈,这是读者进行沟通的方式也是后面读者借鉴的通道。评价能够让读者找到令自己满意的图书。点评管理的业务流程图如图4-6所示:图4-6 点评管理模

48、块流程图4.2.4 搜索与统计模块搜索统计有书籍搜索、博文搜索、统计点评数、评价高的置顶等功能。搜索功能主要是提供了关键字的搜索,读者可以搜索关键字来找到相关的博文或者是图书。而统计则是系统根据评价的好坏、阅读人数、购买人数等进行了统一的统计把评价突出的、预读人数多的、购买人数多的在主页上进行显示。起到了为那些没有具体的阅读目标的读者提供了推荐的作用。搜索与统计模块的业务流程图如图4-7所示:图4-7 搜索与统计模块流程图4.2.5 博文管理模块博文管理有我的博文、删除博文、发表博文、修改博文等功能。此功能主要是针对那些有写作爱好的用户,用户可以通过注册得到账号然后在本网站上发表自己的作品,其

49、他的用户可以阅读他的作品然后进行评价等功能,如果感觉自己发表的博文不够理想可以进行修改和删除。主要是为广大读者提供了一个交互学习的平台,此功能能够很好的提高用户的写作能力。博文管理的业务流程图如图4-8所示:图4-8 博文管理模块流程图4.2.6 书友管理模块书友管理有添加书友、删除书友、书友留言等功能。添加书友之后可以进入书友的页面进行浏览他发表过的博文,也可以给其留言进行学术上的交流。对于那些具有共同兴趣的读者提供了方便,可以通过加为好友然后再进行进一步的沟通了解。提高了本网站的社交性,也使本网站不再显得那么枯燥。书友管理模块的业务流程图如图4-9所示:图4-9 书友管理模块流程图4.3

50、数据库设计与实现数据库设计是建立数据库及其应用系统的技术,是信息系统开发和建议中的核心技术。数据库设计是在给定的DBMS、操作系统和硬件环境下。数据库及其应用系优化的数据模型,并据此建立数据库及其应用系统,使之能够有效的存储和管理应用数据,满足各种用户的应用需求(信息要求和处理要求)。数据库作为整个系统的基础,要保证其设计的合理性,而数据表更要满足规范化要求。要设计好系统,首先要考虑好如何是想数据库的设计。在使用系统时,拥有设计合理的数据库往往可以起到事半功倍的效果。在系统的后续维护、功能扩展当中这一优点更会体现得淋漓尽致。下面从数据库的概念结构设计和数据库的逻辑结构设计两个个方面来介绍数据库

51、设计7。4.3.1 数据库概念结构设计概念设计是一种面向对象的数据模型,是按照用户的观点来对数据和信息建模。它织、筛选应用程序所使用的信息。它以一种能够分析和分类的方式来捕获用户的所有信息,这使得某一模型可以直接转化成数据库结构林淑彬.数据库应用系统的性能设计优化策略J.计算机光盘与应用.2010.01,3(2):15-17。图书点评系统实体根据分析得到E-R图,图中设计规划出的实体有:超级管理员、用户、图书类别、图书板块、图书、博文、好友类别、好友、点评、留言。实体属性分别描述如下:超级管理员用户名,密码用户用户名,密码,年龄,性别,地址,教育信息,Email,爱好,个人说明图书类别类别名称

52、,类别信息图书板块板块名称,板块信息图书书名,作者,出版社,出版时间,网上价格,书籍信息,页数,字数博文主题,内容,发表时间,回复数量,博文状态好友类别类别名称,类别信息好友姓名,地址,电话,Email点评内容,表情,评论时间留言内容,表情,留言时间系统实体之间关系的E-R图如图4-3-1所示。 图4-3-1 系统实体之间关系的E-R图超级管理员在系统中起到的是相当重要性,他有助于维护系统的和谐性,虽然简单但是任务很是重要。超级管理员实体E-R图如图4-3-2所示。超级管理员用户名密码图4-3-2超级管理员实体图好友在数据库中也是作为一个不可或缺的数据库表出现的,他的数据的主要体现的是用户针对

53、好友了解的真实性。好友实体E-R图如图4-3-3所示。好友Email姓名电话地址图4-3-3好友实体图图书这一实体是系统中主要展示的,系统中将会展示图书的详细信息,方便用户对图书的全面了解。 图书实体E-R图如图4-3-4所示。书籍信息网上价格出版时间图书页数出版社作者书名字数图4-3-4图书实体图博文这一实体是系统中展示的一部分,系统中将会展示用户博文的详细信息,方便用户对博文的全面了解。博文实体E-R图如图4-3-5所示。博文状态博文回复数量主题发表时间内容图4-3-5博文实体图点评是用户实现点评功能的实体,用户可以针对图书和博文进行点评,图书和博文的评价好坏就是由用户的点评来统计出来的,

54、方便用户选择好的图书和博文。点评实体E-R图如图4-3-6所示。点评评论时间内容表情图4-3-6点评实体图留言是用户实现好友沟通的实体,用户可以针对不同的好友进行留言,能够使用户及时联系到好友。留言实体E-R图如图4-1-7所示。留言留言时间内容表情图4-3-7留言实体图4.3.2 数据库逻辑结构设计与实现概念结构设计所得的E-R模型是对用户需求的一种抽象的表达形式,它独立于任何一种具体的数据模型,因而也不能为任何一个具体的DBMS所支持。为了能够建立起最终的物理系统,还需要将概念结构进一步转化为某一DBMS所支持的数据模型,然后根据逻辑设计的准则、数据的语义约束、规范化理论等对数据模型进行当

55、的调整和优化,形成合理的全局逻辑结构,并设计出用户子模式。这就是数据库逻辑设计所要完成的任务Baron Schwartz.High performance MySQLJ. OReilly Media,2008,05,15(6):101-107。根据以上数据库的分析,本系统数据库名称为books_comments,数据库中包括10个表分别为超级管理员表(b_superuser)、用户表(b_user)、图书板块表(b_bookboard)、图书类别表(b_bookclass)、图书表(b_books)、博文表(b_blog)、点评表(b_discuss)、好友分组表(b_friendgroup)

56、、好友表(b_friends)、留言表(b_leaveword)。下面将分别对数据库中的各个表进行介绍。1. 超级管理员表(b_superuser):用来进行系统维护,表中共有3个属性,分别是管理员ID、用户名、密码,其中管理员ID为主键。具体设计如表4-3-1所示。表4-3-1 超级管理员表列名属性类型长度suId suName suPasswordID用户名密 码IntVarcharVarchar1010202. 图书类别表(b_bookclass):用来显示图书所在的类别,表中共有4个属性,分别是类别ID、类别名称、类别信息、图书板块ID,其中类别ID为主键,图书板块ID为外键。具体设计

57、如表4-3-2。表4-3-2 图书类别表列名属性类型长度bcIdbcNamebcInfobbIdID类别名称类别信息图书板块IDIntVarcharVarcharInt1030100103. 用户表(b_user):系统的使用人群,表中共有14个属性,分别是用户ID、用户名、密码、年龄、性别、头像、星座、爱好、职业、教育背景、QQ、邮箱、长居地、个人说明,其中用户ID为主键。具体设计如表4-3-3所示。表4-3-3 用户表列名属性类型长度userIduserNamepassWordagesexuserFaceconstellationhobbyoccupationeducationchatem

58、ailaddressintroduceID用户名密码年龄性别头像星座爱好职业教育背景QQ邮箱长居地个人说明IntVarcharVarcharIntVarcharVarcharVarcharVarcharVarcharVarcharIntVarcharVarcharVarchar103020101050205030602030802004. 图书板块表(b_bookboard):用来显示图书类别所在的图书版块,表中共有3个属性,分别是板块ID、板块名称、板块信息,其中板块ID为主键。具体设计如表4-3-4。表4-3-4 图书版块表列名属性类型长度bbIdbbNamebbInfoID板块名称板块信

59、息IntVarcharVarchar10301005. 图书表(b_books):用来显示图书的信息,表中共有10个属性,分别是图书ID、图书名称、图书作者、图书内容、图书的出版社、网上图书的价格、出版时间、书号、字数、图书类别ID,其中图书ID为主键,图书类别ID为外键。具体设计如表4-3-5.表4-3-5 图书表列名属性类型长度booksIdautherbookNamebookInfopublishpricepublishTimebookNumamountbcIdID作 者图书名称图书内容出版社网上价格出版时间书号字数图书类别IDIntVarcharVarcharVarcharVarcha

60、rVarcharVarcharIntIntInt10301002555020403030106. 博文表(b_blog):用户用来发表的文章,表中共有9个属性,分别是博文ID、博文主题、博文内容、博文发表时间、博文状态、精华博文、回复数量、访问人数、用户ID。其中博文ID为主键,用户ID为外键。具体设计如表4-3-6.表4-3-6 博文表列名属性类型长度blogIdblogThemeblogContentblogTimeblogStatesuperBlogreplyAmountlookAmountuserIdID博文主题博文内容发表时间博文状态精华博文回复数量访问人数用户IDIntVarcha

61、rVarcharDateTimeVarcharIntIntIntInt103010010102020107. 好友分组表(b_friendgroup):用来展示好友所在列表。表中共有3个属性,分别是好友组ID、好友组名称、好友组信息。其中好友组ID为主键。具体设计表4-3-7。表4-3-7 好友分组表列名属性类型长度fgIdfgNamefgInfoID好友组名称好友组信息IntVarcharVarchar10301008. 点评表(b_discuss):用户针对图书和博文进行评论。表中共有8个属性,分别是点评ID、点评内容、点评表情、发表时间、精彩点评、用户ID、图书ID、博文ID。其中点评ID为主键,用户ID、图书ID、博文ID为外键具体设计表4-3-8。表4-3-8 点评表列名属性类型长度discussIddiscussConte

展开阅读全文
温馨提示:
1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
2: 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
3.本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2023-2025  zhuangpeitu.com 装配图网版权所有   联系电话:18123376007

备案号:ICP2024067431-1 川公网安备51140202000466号


本站为文档C2C交易模式,即用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。装配图网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知装配图网,我们立即给予删除!