收藏 分享(赏)

二手教科书交易平台:“站内信维护”及“界面设计”模块.doc

上传人:wo7103235 文档编号:6264793 上传时间:2019-04-03 格式:DOC 页数:63 大小:1.86MB
下载 相关 举报
二手教科书交易平台:“站内信维护”及“界面设计”模块.doc_第1页
第1页 / 共63页
二手教科书交易平台:“站内信维护”及“界面设计”模块.doc_第2页
第2页 / 共63页
二手教科书交易平台:“站内信维护”及“界面设计”模块.doc_第3页
第3页 / 共63页
二手教科书交易平台:“站内信维护”及“界面设计”模块.doc_第4页
第4页 / 共63页
二手教科书交易平台:“站内信维护”及“界面设计”模块.doc_第5页
第5页 / 共63页
点击查看更多>>
资源描述

1、本 科 毕 业 论 文二手教科书交易平台:“站内信维护”及“界面设计”模块Platform of Secondhand Textbook: Module of“Maintenance of Inner Mail ”and “Interface Design”姓 名: 学 号:学 院:软件学院系:软件工程专 业:软件工程年 级:指导教师: 厦门大学本科生毕业论文年 月摘 要随着互联网和个人电脑在大学校园的普及和应用,互联网作为学生传播信息资源的工具已经越来越重要。建设一个专为高校服务的符合高校特点的二手教科书交易平台,实现旧书的再利用,不仅能为广大学子提供方便,为学校和家长节约教育成本,同时也能

2、促进环保节约型校园的发展。本文详细讨论了系统中“站内信维护”和“界面设计”模块的实现。其中, “站内信维护”模块完成对会员站内信的管理,保障了交易双方可以通过收发站内信进行一对一的在线交流。 “界面设计”部分,则按照简明、整洁、清新的整体风格,提供符合用户操作习惯的友好界面。本系统使用 Java EE 技术,结合 Struts,Spring,Hibernate 框架结构,采用 MySql 作为数据库进行开发。 系统主要的设计目标是对二手教科书的供求信息的发布和管理,为同学们提供线下交易的交流平台。关键词: 交易;站内信;Java EEAbstractAlong with the fast de

3、velopment of computer network and the spread of personal computer in university campus, the network is more and more important as the tool with which information is disseminated for students. To build a specifically trading platform of the second-hand textbooks for university students, re-use the us

4、ed books can not only provide convenience for the majority of students, schools and parents to save for education costs, but also can promote the development of environmental conservation in campus. The dissertation discussed how to design the module of “The Maintenance of Inner Mail” and “Interface

5、 Design” of the system in detail. With them, the module of “The Maintenance of Inner Mail” realizes the function that it manages the inner mail of the member of the platform, makes sure that the member of the platform can exchange their opinion online one-to-one by sending and receiving letters. And

6、, the section of “Interface Design”, according to the simple, clean, fresh and overall style, offers customers a user-friendly interface. The system uses Java EE technology, combining Struts, spring, Hibernate framework, using MySql as database to develop. The design objective of the system is to ma

7、nage the release of information of the demand and supply of second-hand textbooks. In order to provide an off-line trading exchange platform for students.Key words: transaction; inner mail; Java EE.厦门大学本科生毕业论文1目 录第一章 引 言 .11.1 项目背景 11.2 开发意 义 21.3 国内外研究现状分析 .21.4 系统设计目标及组织 结构 2第二章 开发工具及使用技术介绍 42.1 开

8、发工具介绍 .42.1.1 开发平台:Windows XP Professional .42.1.2 开发工具:MyEclipse 6.0.1 .42.1.3 数据库:MySql .42.1.4 数据库设计:SQLYOG .42.1.5 WEB 服务器:Tomcat 52.1.6 软件建模:Microsoft Office Visio 2003 .52.2 开发技术介绍 52.2.1 Java EE 技术介绍 52.2.2 MVC 技术介绍 62.2.3 Struts 技术介绍 82.2.4 Spring 技术介绍 102.2.5 Hibernate 技术介绍 122.2.6 JSP 技术介绍

9、 14第三章 系统总体设 163.1 项目开发任务 .163.2 系统模块设计 .173.3 系统结构 173.4 系统部署及架构 193.4.1 系统部署 193.4.2 系统开发架构 .203.5 数据库设计 .233.5.1 数据信息 .233.5.2 数据流 .233.5.3 实体关系 .24厦门大学本科生毕业论文23.5.4 确定数据表 .263.5.5 建立数据库 30第四章 站内信维护模块详细设计 324.1 站内信维护模块用例 324.1.1 模块用例图 .324.1.2 用例的详细说明 .324.2 模块开发内容 .344.3 站内信维护顺序图 344.4 模块类图 374.

10、4.1 Innermail 类 374.4.2 InnermailForm 类 374.4.3 InnermailAction 类 384.4.4 InnermailDAO 类 394.5 站内信维护模块界面设计及使用流程 40第五章 界面总体实现模块 .485.1 界面效果的整体性、一致性 485.1.1 界面的色彩及风格与系统界面统一 .485.1.2 操作流程的系统化 .485.2 界面效果的个性化 .485.2.1 特有的界面构架 .485.2.2 合理的界面图标 .485.2.3 界面色彩的个性化设置 .485.3 界面视觉元素 .495.3.1 图形图像元素的质量 .495.3.2

11、 线条色块与图形图像的结合 495.4 界面展示 .49第六章 结束语 .51参考文 献 52致 谢 53厦门大学本科生毕业论文3Contents Chapter 1 Introduction11.1 Origin of The System 11.2 Analysis of domestic and foreign research.21.3 The goal of the System design 21.4 Significance for Developing.2Chapter 2 Tools And Technology In Use42.1 Tool in use.42.1.1 D

12、evelopment platform:Windows XP Professional .42.1.2 Development tool:MyEclipse 6.0.1 .42.1.3 Database:MySql 42.1.4 Tool for database design:SQLYOG .42.1.5 WEB Server:Tomcat .52.1.6 Software Modeling:Microsoft Office Visio 2003 52.2 Technology in use.52.2.1 Java EE introduction52.2.2 MVC introduction

13、 .62.2.3 Struts introduction .82.2.4 Spring introduction102.2.5 Hibernate introduction.122.2.6 JSP introduction.14Chapter 3 System Design16厦门大学本科生毕业论文43.1 Responsibity of The System 163.2 The module design of the system.173.3 system deployment architecture173.4 Deployment and structure of the system

14、 193.4.1 System deployment .193.4.2 System development framework .203.5 Database Design233.5.1 Data233.5.2 Data Flow 233.5.3 Entity Relationship 243.5.4 Determine the data tables 263.5.5 Establish a database.30Chapter 4 The Maintenance of Inner Mail module .324.1 Use case the maintenance of inner ma

15、il module324.1.1 Use case diagram.324.1.2 Detailed description of use case 324.2 The development content of modules.344.3 Sequence Diagrams of the maintenance of inner mail module .344.4 Class Diagram of the module374.4.1 Class Innermail.374.4.2 Class InnermailForm .374.4.3 Class InnermailAction .38

16、厦门大学本科生毕业论文54.4.4 Class InnermailDAO .394.5 Interface design and the use of process of the module .40Chapter 5 The Overall Achievement Of The Interface Module485.1 The effect of interfaces integrity, consistency .485.1.1 Interface, color and style unity with the system interface .485.1.2 Systematic

17、processes .485.2 Personalized interface effect 485.2.1 Framework-specific interface485.2.2 Reasonable interface icon485.2.3 Personalized interface color settings .485.3 Visual interface elements .495.3.1 The quality of graphics elements.495.3.2 Color of line and graphics combination of images.495.4

18、Interface display.49Chapter 6 Summary 51References 52Acknowledgement .53厦门大学本科生毕业论文1第一章 引 言1.1 项目背景每年毕业生离校时都会丢弃或转赠大量的学习资料,这些旧书往往得不到合理的处理。如果能够建立一个场所,使得这些旧书能够以较为廉价的价格卖给所需的同学,无论对于需要处理废旧物的同学,还是对于需要这些物品的同学,都是非常有利的。然而,现在大专院校的同学们对旧书的处理大概有以下几个方式:部分转送给下一届同学。由于认识的人毕竟有限,这样可能使有价值的旧书找不到合适的主人,不能充分被利用。同时,可能存在其他院系的

19、同学想求取其他专业相关的书籍而不得。到论坛上发帖求购旧书或出售旧书。这虽然不失为一个为旧书寻找新主人的好方法,但是论坛毕竟资料有限,而且难于管理,也不方便查找。用户流量也少,缺乏针对性。到旧书跳蚤市场求购旧书或出售旧书。尽管可以为旧书的再利用提供一个交易平台,但是由于毕业生时间有限,而且在书籍的寻找方面也存在很大的弊端。这样会给买卖双方造成很大的不便。所以,我们需要一个场所,这个场所能解决上述这些问题,能结合高校实际,为广大同学提供一个方便、快捷的交易平台。这个场所就是一个校园小型二手教科书网站。随着时代的发展,在网上购物对我们来说已经非常熟悉了,与传统的购物方式相比,网上购物更加方便、快捷,

20、同时也充满乐趣。对毕业生来说,这更是一个很好的途径,在毕业前通常都会有很多事要忙,没有太多的时间来处理一些废旧书籍,而这些所谓的“废旧书籍”很可能对其他人来说还是有利用价值的。“二手教科书交易平台”的建设,正好满足了大家的需要。1.2 开发意义随着高校信息化建设的日益发展,网络基本已经铺设到了校园的各个地方,厦门大学本科生毕业论文2而校园二手教科书交易还处在一种故缺乏组织平台,比较混乱的状态。校园二手教科书交易的电子化成为校园信息化建设大形势下的要求。区别于大型电子商务站点,校园二手教科书交易平台的所面对的对象更具有集中性的特点。因此,开发一套范围可控、商品集中、交易安全、方式多样等特点的在线

21、交易平台,势必会成为学生不可缺少的交易工具,在另一程度上也优化了校园环境,促进了“环保节约”校园的建设。1.3 国内外研究现状分析随着时代的不断进步,科学技术日新月异的发展,现在已进入了一个崭新的时代网络时代。网络的普及,全球化的发展,导致了电子商务的突飞猛进,作为应用最为广泛的网上购物系统则是电子商务中的一枝奇葩。Internet上很多运营成功的购物网站使得我们足不出户就可以购买到自己所需要的物品。网上购物无论是在商品种类、商品价格还是商品质量上都给用户提供了更为广阔的选择空间,用户只需在相关网站浏览一些页面就能找到适合自己需要的商品。但是目前基于 Internet 的二手书交易平台,面向大

22、众,书籍分类比较笼统,交易行为没有保障。缺少针对校园旧书处理的交易平台。1.4 系统设计目标及组织结构一个电子商务性的网站必须有自己完整的系统,除了功能强大、易于维护外,关键是出了问题后能快速进行修补,而这些不是临时就能做出来的,必须预先做好充分的准备。设计并推出校园在线二手教科书交易平台,并不意味着功能越强大,就越能让用户满意,关键在于它符合用户习惯,方便他们的应用,并且要有特色,本系统在参照众多电子商务网站的基础上,引用了一些常见的模块,并糅合了自身的特点,系统相关功能模块如下所列:(1)用户管理模块(2)教科书交易模块(3)非教科书交易模块(4)教科书信息管理模块(5)系统管理模块本系统

23、是在根据本校学生的需求,设计开发的。系统开发采用了 JAVA EE技术。本文主要的主要组织结构如下:厦门大学本科生毕业论文3 第一部分是引言。简要描述项目起源、开发意义、使用的工具和技术。并且介绍了开发流程以及作者负责的工作。 第二部分开发工具及技术介绍。简要介绍了本系统采用的软件工具,以及使用到的基本技术。 第三部分是系统的总体设计。确定用户需求后,明确系统工作环境和业务模块。在详细了解业务流程后,确定系统采用 B/S 架构部署,对进行数据库设计。在系统正式开发前,完成网站的建设。 第四部分是介绍了作者负责的站内信维护模块的详细设计。该部分详细描述了该模块包括的用例,各用例间关系,实体类,实

24、体类之间关系,以及模块间关系。系统各模块的开发的基础和依据。按照各模块功能流程,详细介绍了界面设计和实现。 第五部分简要介绍了作者负责的界面设计模块的处理方式。并展示界面中的首页。 第六部分结束语。阐述了本系统开发的心得体会,以及开发后的总结。厦门大学本科生毕业论文4第二章 开发工具及使用技术介绍2.1 开发工具介绍本系统采用 B/S(Brower/Server)架构,即浏览器和服务器结构。2.1.1 开发平台:Windows XP Professional 2.1.2 开发工具:MyEclipse 6.0.1MyEclipse 企业级工作平台是对 Eclipse IDE 的扩展,利用它我们可

25、以在数据库和 JavaEE 的开发、发布,以及应用程序服务器的整合方面极大的提高工作效率。它是功能丰富的 JavaEE 集成开发环境,包括了完备的编码、调试、测试和发布功能,完整支持 HTML, Struts, JSF, CSS, Javascript, SQL, Hibernate。由于 MyEclipse 插件丰富,并完整支持 Struts 和 Hibernate 框架,能有效的提高开发效率。所以本系统采用 MyEclipse 作为开发工具。2.1.3 数据库:MySqlMySql 是一个小型关系型数据库管理系统,开发者为瑞典 MYSQL AB 公司。在 2008 年 1 月 16 号被

26、Sun 公司收购。目前 MySql 被广泛地应用在 Internet 上的中小型网站中。由于其体积小、速度快、总体拥有成本低,尤其是开放源码这一特点,许多中小型网站为了降低网站总体拥有成本而选择了 MySql 作为网站数据库。虽然 MySql 与其他的大型数据库例如 Oracle、DB2、SQL Server 等相比,MySql 自有它的不足之处,如规模小、功能有限。但是对于一般的个人使用者和中小型企业来说,MySql 提供的功能已经绰绰有余,而且由于 MySql 是开放源码软件,因此可以大大降低总体拥有成本。2.1.4 数据库设计:SQLYOGSQLYOG 是一个易于使用的、快速而简洁的图形

27、化管理 MYSQL 数据库的工具,它能够在任何地点有效地管理你的数据库。使用 SQLYOG 是作为数据库设计工具,具有如下优点:厦门大学本科生毕业论文5快速备份和恢复数据;以 GRID / TEXT 格式显示结果; 批量执行 SQL 脚本文件; 以直观的表格界面建立或编辑数据表;以直观的表格界面编辑数据;创建或删除数据库;操纵数据库的各种权限:库、表、字段;支持对数据表的各种高级属性修改。2.1.5 WEB 服务器:TomcatTomcat 是一个小型的轻量级应用服务器,在中小型系统和并发访问用户不是很多的场合下被普遍使用,是开发和调试 JSP 程序的首选。Tomcat 是一个免费的开放源代码

28、的 Web 应用服务器,是 Apache 软件基金会(Apache Software Foundation)的 Jakarta 项目中的一个核心项目,由 Apache、Sun 和其他一些公司及个人共同开发而成。由于有了 Sun 的参与和支持,最新的 SERVLET 和JSP 规范总是能在 Tomcat 中得到体现,Tomcat 5 支持最新的 SERVLET 2.4 和 JSP 2.0 规范。因为 Tomcat 技术先进、性能稳定,而且免费,因而深受Java 爱好者的喜爱并得到了部分软件开发商的认可,成为目前比较流行的 Web 应用服务器。2.1.6 软件建模:Microsoft Office

29、 Visio 2003Visio 是 Microsoft 提供的一款建模工具,由于与 VS 同是一个公司的产品,所以它们之间具有良好的结合性。Visio 不仅包括软件工程的一些建模,还涉及其他建筑、网络、建筑工程等建模。Visio 中可以全面饮用 UML 语言中所有的事务、关系和图,更好地体现图形化设计的意义,Visio 基于 Microsoft 的 Visual 基础,其可视化设计允许操作者通过拖曳就能轻松的完成模块的建设。2.2 开发技术介绍2.2.1 Java EE 技术介绍Java EE 是美国 Sun 公司推出的一种全新概念的模型,与传统的互联网应用程序模型相比有着不可比拟的优势。当

30、今许多企业都需要扩展他们的业务范围,厦门大学本科生毕业论文6降低自身经营成本,缩短他们和客户之间的响应时间,这就需要存在一种简捷,快速的服务于企业,合作伙伴和雇员之间。典型的说,提供这些服务的应用软件必须同企业信息系统(EIS)相结合,并提供新的能向更为广阔的用户提供的服务。这些服务要具备以下的特点: a高可用性:来满足现在的全球商业环境b安全性:保护用户的隐私和企业数据的安全 c可依赖性和可扩展性:保证商业交易的正确和迅捷通常这些服务是由分布的应用程序组成的,包括前端数据端和后端数据源以及它们之间的一层或几层,这些中间层提供了把商业功能和数据与 EIS 相结合的功能。这些中间层把客户端从复杂

31、的商业逻辑中分离出来,利用成熟的INTERNET 技术使用户在管理上所花费的时间最小化。 JAVAEE 正是降低了开发这种中间层服务的成本和复杂程度,因而使得服务可以被快速的展开,并能够更轻松的面对竞争中的压力。JAVAEE 通过定义一种标准的结构来实现它的优势,如下:aJAVAEE Application Programming Model -一种用于开发多层次,瘦型客户用户程序的标准设计模型 ;bJAVAEE Platform-一个标准的平台,用来整合 JAVAEE 的应用程序,指定一系列的接口和方法; cJAVAEE Compatibility Test Suite-一套兼容测试组件,用

32、来检测产品是否同 JAVAEE 平台兼容 ;dJAVAEE Reference Implementation-用来示范 JAVAEE 的能力。 2.2.2 MVC 技术介绍模型-视图-控制器(MVC)是 80 年代 Smalltalk-80 出现的一种软件设计模式,现在已经被广泛的使用。1、模型(Model)模型是应用程序的主体部分。模型表示业务数据,或者业务逻辑.2、视图(View)视图是应用程序中用户界面相关的部分,是用户看到并与之交互的界面。3、控制器(controller)厦门大学本科生毕业论文7控制器工作就是根据用户的输入,控制用户界面数据显示和更新 model 对象状态。图 2-1

33、:MVC 组件类型的关系和功能MVC 式的出现不仅实现了功能模块和显示模块的分离,同时它还提高了应用系统的可维护性、可扩展性、可移植性和组件的可复用性。 早期的程序中,如果不注意对数功能和显示的解耦合,常常会导致程序的复杂及难以维护。很多 VB,Delphi 等 RAD 程序都有这种问题。甚至现在的 C#,Java 有时候也会出现把业务逻辑写在显示模块中的现象。 管 MVC 设计模式很早就提出,但在 Web项目的开发中引入 MVC 却是步履维艰。主要原因:一是在早期的 Web 项目的开发中,程序语言和 HTML 的分离一直难以实现。CGI 程序以字符串输出的形式动态地生成 HTML 内容。后来

34、随着脚本语言的出现,前面的方式又被倒了过来,改成将脚本语言书写的程序嵌入在 HTML 内容中。这两种方式有一个相同的不足之处即它们总是无法将程序语言和 HTML 分离。二是脚本语言的功能相对较弱,缺乏支持 MVC 设计模式的一些必要的技术基础。直到基于 JAVAEE 的 JSP Model 2问世时才得以改观。它用 JSP 技术实现视图的功能,用 Servlet 技术实现控制器的功能,用 JavaBean 技术实现模型的功能 。JSP Model 1 与 JSP Model 2SUN 在 JSP 出现早期制定了两种规范,称为 Model1 和 Model2。虽然Model2 在一定程度上实现了

35、 MVC,但是它的应用并不尽如人意 。厦门大学本科生毕业论文8图 2-2:JSP Model 1图 2-3:JSP Model 2Model2 容易使系统出现多个 Controller,并且对页面导航的处理比较复杂, 有些人觉得 model2 仍不够好,于是 Craig R. McClanahan 2000 年 5 月 提交了一个 WEB framework 给 Java Community.这就是后来的 Struts.2001 年7 月,Struts1.0,正式发布。该项目也成为了 Apache Jakarta 的子项目之一 。Struts 质上就是在 Model2 的基础上实现的一个 MV

36、C 架构。它只有一个中心控制器,他采用 XML 定制转向的 URL。采用 Action 来处理逻辑。2.2.3 Struts 技术介绍Struts 是 Apache 组织的一个开放源码项目。Struts 是一个比较好的 MVC框架,提供了对开发 MVC 系统的底层支持,它采用的主要技术是 Servlet,JSP和 Custom tag library。Struts 可以大大提高 Web 应用的开发速度。如果在Web 应用中恰到好处地使用 Struts,将把从头开始设计框架的时间节省下来,厦门大学本科生毕业论文9使得开发人员可以把精力集中在如何解决实际业务问题上。Struts 是实现 MVC 模

37、式的通用框架,它由四个主要部分组成,模型、视图、控制器和 XML 文件。模型通常由 Java BeanEJB 组件实现,负责处理业务逻辑;视图包括一组 JSP 文件,这些文件主要由 JSP 标签或客户化标签构成,它简化了 JSP 页面的编码工作;在 Struts 框架中控制器主要包括 Action Servlet 类和 Action 类,Action Servlet 是 Struts 的核心部件,它接受用户的 Http 请求,根据配置信息将请求转发给适当的 Action 对象,Action 类负责调用模型的方法,并帮助控制应用程序的流程;Struts 包括 Web.xml 和 Struts-c

38、onfig.xml 两个配置文件,其中 Web.xml 是 Web 应用的发布描述文件,Struts-config.xml 是与 Struts 相关的特殊信息配置的描述文件,在该配置文件中,每一个 Action 的映射信息都通过一个元素来配置。这些配置信息在系统启动的时候被读入内存,供 Struts 在运行期间使用,在内存中,每一个元素都对应一个 org.apache.struts.action.ActionMapping 类的实例。如图 2-4 所示:图 2-4:从 MVC 角度观察 struts 框架中的组件Struts 的工作流程:对于采用 Struts 框架的 Web 应用,在 Web

39、 应用启动时就会加载并初始化ActionServlet,ActionServlet 从 struts-config.xml 文件中读取配置信息,把它们存放到各种配置对象中,例如 Action 的映射信息存放在 ActionMapping对象中。当 ActionServlet 接收到一个客户请求时,将执行如下流程:厦门大学本科生毕业论文10(1) 检索和用户请求匹配的 ActionMapping 实例,如果不存在,就返回用户请求路径无效的信息。(2) 如果 ActionForm 实例不存在,就创建一个 ActionForm 对象,把客户提交的表单数据保存到 ActionForm 对象中。(3)

40、根据配置信息决定是否需要表单验证。如果需要验证,就调用ActionForm 的 validate()方法。(4) 如果 ActionForm 的 validate()方法返回 null 或返回一个不包含ActionMessage 的 ActionErrors 对象,就表示表单验证成功,(5) ActionServlet 根据 ActionMapping 实例包含的映射信息决定将请求转发给哪个 Action。如果相应的 Action 实例不存在,就先创建这个实例,然后调用 Action 的 execute()方法。(6) Action 的 execute()方法返回一个 ActionForwar

41、d 对象,ActionServlet 再把客户请求转发给 ActionForward 对象指向的 JSP 组件。(7) ActionForward 对象指向的 JSP 组件生成动态网页,返回给客户。若在流程 4 中 ActionForm 的 validate()方法返回一个包含一个或多个ActionMessage 的 ActionErrors 对象,就表示表单验证失败,此时ActionServlet 将直接把请求转发给包含用户提交表单的 JSP 组件。在这种情况下,不会再创建 Action 对象并调用 Action 的 execute()方法。2.2.4 Spring 技术介绍Spring 是

42、 J2EE 应用程序框架,是为了解决企业应用程序开发复杂性而创建的。框架的主要优势之一就是其分层架构,分层架构允许您选择使用哪一个组件。不过,更严格地讲它是针对 Bean 的生命周期进行管理的轻量级容器(Lightweight container),可以单独利用 Spring 构筑应用程序,也可以和Struts,Webwork,Tapestry 等众多 Web 应用程序框架组合使用,并且可以与Swing 等桌面应用程序 API 组合。所以 Spring 并不仅仅只能应用在 J2EE 中,也可以应用在桌面应用及小应用程序中。针对 Spring 开发的组件不需要任何外部库。Spring 的核心要点

43、是:支持不绑定到特定 J2EE 服务的可重用业务和数据访问对象。毫无疑问,这样的对象可以在不同 J2EE 环境 (Web 或 EJB) 、厦门大学本科生毕业论文11独立应用程序、测试环境之间重用。Spring 框架是一个分层架构,由 7 个定义良好的模块组成。如图 2-5 所示:图 2-5:Spring 框架组成组成 Spring 框架的每个模块(或组件)都可以单独存在,或者与其他一个或多个模块联合实现。每个模块的功能如下: (1) 核心容器:核心容器提供 Spring 框架的基本功能。核心容器的主要组件是 BeanFactory,它是工厂模式的实现。BeanFactory 使用 控制反转 (

44、IOC) 模式将应用程序的配置和依赖性规范与实际的应用程序代码分开。 (2) Spring 上下文:Spring 上下文是一个配置文件,向 Spring 框架提供上下文信息。Spring 上下文包括企业服务,例如 JNDI、EJB、电子邮件、国际化、校验和调度功能。 (3) Spring AOP:通过配置管理特性,Spring AOP 模块直接将面向方面的编程功能集成到了 Spring 框架中。所以,可以很容易地使 Spring 框架管理的任何对象支持 AOP。Spring AOP 模块为基于 Spring 的应用程序中的对象提供了事务管理服务。通过使用 Spring AOP,不用依赖 EJB

45、 组件,就可以将声明性事务管理集成到应用程序中。 (4) Spring DAO:JDBC DAO 抽象层提供了有意义的异常层次结构,可用该结构来管理异常处理和不同数据库供应商抛出的错误消息。异常层次结构简厦门大学本科生毕业论文12化了错误处理,并且极大地降低了需要编写的异常代码数量(例如打开和关闭连接)。Spring DAO 的面向 JDBC 的异常遵从通用的 DAO 异常层次结构。 (5) Spring ORM:Spring 框架插入了若干个 ORM 框架,从而提供了 ORM 的对象关系工具,其中包括 JDO、Hibernate 和 iBatis SQL Map。所有这些都遵从 Spring

46、 的通用事务和 DAO 异常层次结构。(6) Spring Web 模块: Web 上下文模块建立在应用程序上下文模块之上,为基于 Web 的应用程序提供了上下文。所以,Spring 框架支持与 Jakarta Struts 的集成。 Web 模块还简化了处理多部分请求以及将请求参数绑定到域对象的工作。(7) Spring MVC 框架:MVC 框架是一个全功能的构建 Web 应用程序的 MVC 实现。通过策略接口,MVC 框架变成为高度可配置的,MVC 容纳了大量视图技术,其中包括 JSP、Velocity 、Tiles、IText 和 POI。Spring 的过人之处在于:它宣称式的事务处

47、理,依懒性的绑定和持久性的支持;控制转入简化 JDBC;Spring 既是全面的又是模块化的;它的设计依赖注入就是要帮助你编写易于测试的代码;Spring 不会给你的工程添加对其他的框架依赖;Spring 也许称得上是个一站式的解决方案,提供了一个典型应用所需要的大部分基础架构。2.2.5 Hibernate 技术介绍Hibernate 是一个开放源代码的对象关系映射框架,是一个面向 Java 环境的对象/关系数据库映射工具。对象/关系数据库映射(object/relational mapping (ORM)这个术语表示一种技术,用来把对象模型表示的对象映射到基于 SQL 的关系模型数据结构中

48、去。Hibernate 不仅仅管理 Java 类到数据库表的映射,还提供数据查询和获取数据的方法,可以大幅度减少开发时人工使用 SQL 和 JDBC 处理数据的时间。它对 JDBC 进行了轻量级的对象封装,使 Java 程序员可以随心所欲的使用对象编程思维来操纵数据库。它不仅提供了从 Java 类到数据表之间的映射,也提供了数据查询和恢复机制。另外 Hibernate 可以利用代理模式来简化载入类的过程,这将大大减少利用 Hibernate QL 从数据库提取数据的代码的编写量,从而节约开发时间和开发成本 Hibernate 可以和多种 Web 服务器或者应用服务器良好集厦门大学本科生毕业论文

49、13成,如今已经支持几乎所有的流行的数据库服务器。一个非常简要的 Hibernate 体系结构的概要图,如图 2-6 所示:图 2-6:一个简要的 Hibernate 体系结构的概要图图 2.3 显示了 hibernate 的工作原理,它是利用数据库以及其他一些配置文件如 hibernate.properties,XML Mapping 等来为应用程序提供数据持久化服务的。Hibernate 具有很大的灵活性,但同时它的体系结构比较复杂,提供了好几种不同的运行方式。在轻型体系中,应用程序提供 JDBC 连接,并且自行管理事务,这种方式使用了 Hibernate 的一个最小子集;在全面解决体系中,对于应用程序来说,所有底层的 JDBC/JTA API 都被抽象了,Hibernate 会替你照管所有的细节。厦门大学本科生毕业论文14(1) SessionFactory(org.hibernate.SessionFactory ):针对耽搁数据库映射关系经过编译后的内存镜像,它也是线程安全的(不可变) 。它是生成 Session 的工厂,本身要用到 ConnectionProvider。该对象可以在进程或集群的级别上,为那些事务之间可以重用的数据提供的二级缓存。(2) Session(org.hibernat

展开阅读全文
相关资源
猜你喜欢
相关搜索

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

本站链接:文库   一言   我酷   合作


客服QQ:2549714901微博号:道客多多官方知乎号:道客多多

经营许可证编号: 粤ICP备2021046453号世界地图

道客多多©版权所有2020-2025营业执照举报