ImageVerifierCode 换一换
格式:DOCX , 页数:16 ,大小:212.96KB ,
资源ID:9251731      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-9251731.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(设计报告.docx)为本站会员(b****0)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

设计报告.docx

1、设计报告 报告编码:安阳师范学院本科学生毕业设计报告监管信息平台的开发数据库设计作 者郭征征院(系)物理与电气工程学院专 业电子信息工程年 级2005级本科学 号05181011指导教师陈永超日 期2009年6月15日学生诚信承诺书本人郑重承诺:所呈交的设计报告是我个人在导师指导下进行的研究工作及取得的研究成果。尽我所知,除了文中特别加以标注和致谢的地方外,报告中不包含其他人已经发表或撰写的研究成果,也不包含为获得安阳师范学院或其他教育机构的学位或证书所使用过的材料。与我一同工作的同志对本研究所做的任何贡献均已在论文中作了明确的说明并表示了谢意。签名: 日期: 论文使用授权说明本人完全了解安阳

2、师范学院有关保留、使用学位报告的规定,即:学校有权保留送交报告的复印件,允许报告被查阅和借阅;学校可以公布报告的全部或部分内容,可以采用影印、缩印或其他复制手段保存报告。签名:导师签名:日期: 监管信息平台中数据库总体结构的设计郭征征(安阳师范学院 电子信息工程系 河南 安阳 455002)摘 要:本文主要说明了在一个Web项目中持久层出现的意义、作用,以及如何对数据的持久化处理。任何一个Web项目在当大量用户同时访问数据库时,效率就会变的非常低,这是由于对数据库的反复读写增加了时间的开销。当持久层作为单独的一层从业务层分离出来后作为单独的一层,人们就可以为这一层独立的开发一个软件包,让其实现

3、将各种应用数据的持久化,并为上层提供服务。 Hibernate就是这样一个工具,它使得程序员可以以面向对象的思维来处理基与关系类型的数据库,从而使得项目开发更加的面向对象化。关键词: 持久层;Hibernate;数据持久化;对象关系映射1 引言随着计算机应用软件的发展,应用程序逐渐由单层体系结构发展为多层体系结构。其中,三层结构是目前典型的一种应用软件结构,如图1左。表述层:提供与用户交互的界面,如GUI(图形用户界面),web页面等;业务逻辑层:负责各种业务逻辑,直接访问数据库,提供对业务数据的保存、更新、删除和查询操作;数据库层:负责存放管理应用的持久性业务数据三层结构的特点是:所有下层向

4、上层提供调用的接口,具体实现细节对上层透明。层与层之间存在自上而下的依赖关系,即上层会访问下层的API,但下层不依赖于上层。之所以从业务逻辑层分离出持久化层是由于:数据库的读写是一个很耗费时间和资源的操作,当大量用户同时直接访问数据库的时候,效率将非常低,如果将数据持久化就不需要每次从数据库读取数据,直接在内存中对数据进行操作,这样就节约了数据库资源,而且加快了系统的反映速度。增加持久化层提高了开发的效率,使软件的体系结构更加清晰,在代码编写和系统维护方面变得更容易。特别是在大型的应用里边,会更有利。同时,持久化层作为单独的一层,人们可以为这一层独立的开发一个软件包,让其实现将各种应用数据的持

5、久化,并为上层提供服务。从而使得各个企业里做应用开发的开发人员,不必再来做数据持久化的底层实现工作,而是可以直接调用持久化层提供的API。目前在持久化层领域,实现模式有以下几种:A 业务逻辑和数据访问耦合B 主动域对象模式C ORM模式D JDO模式E CMP模式本系统采用的是ORM(Object Relational Mapping),即对象关系映射。指以O/R原理设计的持久化框架(Framework),包括 O/R机制、SQL自生成、事务处理和Cache管理等。 ORM的实现思想就是将关系数据库中表的数据映射成为对象,以对象的形式展现,这样开发人员就可以把对数据库的操作转化为对这些对象的操

6、作。因此它的目的是为了方便开发人员以面向对象的思想来实现对数据库的操作。2 系统整体构架2.1功能描述本系统是基于B/S即浏览器/服务器模式应用、包括协同办公、数据维护、业务提示、统计分析、数据管理、个人助理、公共服务、系统管理8大功能模块便于管理结构设计,界面简洁友好、资料打印便捷、权限机动控制。2.2技术的选择及其软硬件环境2.2.1技术选择在开发中相关的技术选择如表1:表1技术选择JAVA web projectMyeclipse6.5,NetBean5.5HTMLDreamweaver cs3数据库服务器Oracle9.0.2JAVA虚拟机jdk1.4.2系统结构B/S选择以上技术的具

7、体原因为:因为是市一级的项目,下级有多个使用单位,分布在不同的地方。C/S的维护成本太高,不太适合项目的要求,所以选择B/S的结构。由于客户已有Oracle9.0.2,jdk1.4.2的运行环境,不可能为本项目再配一个运行环境,所以Oracle9.0.2,jdk1.4.2成为我们必然的选择。2.2.2软件环境(1) 软件配置如表2所示: 表2软件配置操作系统Windows2003(服务器)WindowsXP(开发机器) WEB服务器Apache2+Tomcat5.0.28(开发)数据库服务器Oracle9.0.2(2) 开发工具及客户端工具如表3所示:表3使用工具JAVA web projec

8、tMyeclipse6.5NetBean5.5HTMLPhotoShop cs3Dreamweaver cs3OraclePl/Sql developerJAVA虚拟机jdk1.4.2(如能使用5.0版更好)(3) 开发框架及可能应用的开源组件如表4所示:表4框架软件框架Struts2+Sping2+hibernate3其它开源组件Ecside、prototype.js、json.js、c3p0、acegi2.2.3硬件环境开发机器配置如表5所示:表5机器配置计算机类型普通PC机内存1G显示器17寸硬盘80G其它局域网内互联数量82.3框架设计当前流行的Web应用通常被分为四层,分别是:表示层

9、(PresentationLayer),业务层(Business Layer),持久层(Persistence Layer)和域模型层(Domain Model Layer)。通过分层,可以降低系统各部分之间的耦合程度,有利于开发人员的分工,增加系统的可维护性及可扩展性。Struts 2+Spring+Hibernate三个框架的组合是中,小企业普遍采用的方式,这种组合很好的体现了MVC模式。它以Web应用的经典分层为基础,对Struts 2、Spring和Hibernate框架进行了有效整合。即以Struts 2作为表示层实现(运用Struts 2标签作为前端JSP页面的主要实现技术,运用S

10、truts 2的ActionServlet作为整个应用的控制转发实现),以Hibernate作为数据持久层的实现,业务层则应用Spring框架(各层之间面向接口的调用关系、接口如何实现、对Hibernate的模版封装、灵活的事务控制机制),最后设计出了一个灵活、松耦合、高度可扩展性和可维护性的Web开发框架。图2框架设计图如图:表示层主要集中在Struts,业务层在Spring,持久层Hibernate。下面重点介绍持久层的作用:Hibemate持久层所负责:Hibemate持久化的对象能够进行数据库中存储,更新,删除数据库记录的等同操作。Hibemate框架支持大部分主流数据库。在整个Web

11、应用中,由实际需求中的业务对象组成的域模块层,通过一个持久对象(POJO)集合,让它在不同层之间移动。Hibernate将数据库中的信息存放入对象 (POJO),在连接断开的情况下把这些数据显示到Ul层。而那些对象也可以返回给持续层,从而在数据库里更新。3 生成对象关系映射文件和JAVA代码3.1 Hibernate简介3.1.1 Hibernate定义Hibernate是一种Java语言下的对象关系映射解决方案。 它是一种自由、开源的软件。它用来把对象模型表示的对象映射到基于SQL 的关系模型结构中去,为面向对象的领域模型到传统的关系型数据库的映射,提供了一个使用方便的框架。 3.1.2Hi

12、bernate的作用Hibernate 不仅管理Java 类到数据库表的映射(包括从Java数据类型到SQL数据类型的映射),还提供数据查询和获取数据的方法,可以大幅度减少开发时人工使用SQL 和JDBC 处理数据的时间。它的设计目标是将软件开发人员从大量相同的数据持久层相关编程工作中解放出来。无论是从设计草案还是从一个遗留数据库开始,开发人员都可以采用Hibernate。3.1.3 Hibernate的应用Hibernate对JDBC进行了非常轻量级的对象封装,使得Java程序员可以随心所欲的使用对象编程思维来操纵数据库。 Hibernate可以应用在任何使用JDBC的场合,它既可以在Jav

13、a的客户端程序使用,也可以在Servlet/JSP的Web应用中使用。最具革命意义的是,Hibernate可以在应用EJB(Enterprise JavaBeans是Java应用于企业计算的框架)的J2EE架构中取代CMP,完成数据持久化的重任。3.1.4 Hibernate的核心接口框图图3 Hibernate核心接口3.1.5 Hibernate的优缺点优点:a.Hibernate 使用 Java 反射机制 而不是字节码增强程序来实现透明性。b.Hibernate 的性能非常好,因为它是个轻量级框架。映射的灵活性很出色。c.它支持各种关系数据库,从一对一到多对多的各种复杂关系。 缺点:Hi

14、bernate限制您所使用的对象模型。例如,一个持久性类不能映射到多个表。3.2 ORM 对象-关系映射 对象关系映射(ORM)是一种为了解决面向对象与关系数据库存在的互不匹配的现象的技术,简单的说,ORM是通过使用描述对象和数据库之间映射的元数据,将Java程序中的对象自动持久化到关系数据库中。本质上就是将数据从一种形式转换到另外一种形式。对象和关系数据是业务实体的两种表现形式,业务实体在内存中表现为对象,在数据库中表现为关系数据。内存中对象之间存在关联和继承关系,而在数据库中,关系数据无法直接表达多对多关联和继承关系。因此,对象关系映射系统一般以中间件的形式存在,主要实现程序对象到关系数据

15、库数据的映射。面向对象是从软件工程基本原则的基础发展起来的,而关系数据库则是从数学理论发展而来的,两套理论存在显著地区别。为了解决这个不匹配的现象,对象关系映射技术应运而生。Hibernate作为ORM开发工具,通过配置文件hibernate. cfg . xml或hibernate. propertys和映射文件(* . hbm . xml)把Java 对象或持久化对象(PO)映射到数据库的数据表,然后通过操作PO,对数据库中的表进行各种操作。3.3 完成对象关系映射这部分工作是在用ERwin PLSQL完成建表建库后才能进行。在Myeclipse 的Datebase Explorer 视图

16、下完成相应得操作。3.3.1使用到的理论及其工具在此项目中构建Hibernate基础代码的过程是:直接从数据库中导出表结构,并生成对应的ORM文件和Java代码。通过直接从目标数据库中导出数据结构,最小化了手工编码和调整的可能性,从而在最大程度上保证了ORM文件和Java代码与实际数据库结构相一致,我们是在Eclipse中使用Hibernate Synchronizer插件进行开发的。Hibernate同时支持xml格式的配置文件以及传统的properties文件配置方式。xml格式的配置文件提供了更易读的结构和更强的配置能力,可以直接对映射文件加以配置,而在properties文件中则无法配

17、置,必须通过代码中的Hard Coding加载相应的映射文件。3.3.2具体实现首先把Hibernate的所有jar文件到项目中来:在当前项目上右击选择properties 选项,然后单击Java Build Path 窗口右侧的 按钮,从弹出的对话框中选择jar文件所在的目录完成添加。打开Myeclipse ,切换到 Myeclipse database explorer 视图,在DB Browser中点击连接到服务器上的oracle数据库如图4:图4连接服务器本项目中我们在Oracle数据库中设置的用户名为kssadminuser,如图5所示。连接到服务器上的Oracle数据库之后打开查看

18、kssadminuser下拉条中的TABLE 项,下面显示了数据库中的所有的表,每个表的下面都有这个表的详细信息,例如字段名,类型等。图5建好的表然后通过这些表在Myeclipse中利用已经安装好的Hibernate Synchronizer插件自带的功能生成对应的ORM文件和Java代码如图6:图6生成ORM文件和Java代码操作点击finish后就可以自动生成ORM文件和Java代码。Hibernate将软件开发人员从大量相同的数据持久层相关编程工作中解放出来,大幅度减少了开发时人工使用SQL 和JDBC 处理数据的时间。通过直接从目标数据库中导出数据结构,最小化了手工编码和调整的可能性,

19、从而在最大程度上保证了ORM文件和Java代码与实际数据库结构相一致。使得程序员可以以面向对象的思维来处理基于关系类型的数据库,从而使得项目开发更加的面向对象化。4 总结随着知识经济时代的到来,社会进步正在不断加速,办公自动化系统的内涵与外延都会不断的拓展。知识管理、实时协同、业务流程及信息集成、个性化门户将会丰富与完善办公自动化系统应用,同时IT技术的飞速发展,必然会有创新性的技术,以统一的支撑平台来解决办公自动化系统需求。从今天Oracle、SAP等公司在客户机/服务器套件中增加Web前端的努力来看,C/S和B/S结构的结合依然有着强大的生命力。本系统在远程学习,知识提炼方面还有待进一步提

20、高。监管信息平台的开发在总体分析的基础上确定了系统的逻辑模型,确立系统架构为基于J2EE的B/S模式的体系结构,设计出了一个基于Struts 2+Spring+Hibernate多层结构的Web应用系统框型,本开发框架不仅可以提高软件产品质量,还使得应用开发规范和快速,节省了项目的成本、缩短项目的开发周期、降低项目管理的难度和风险,是本项目成功完成的保证。基于Oracle数据库的可用性强、可扩展性强、数据安全性强、稳定性强等优点综合各方面因素选择了Oracle数据库来为本系统服务。本文先是对看守所管理系统的总体架构的设计进行的了一个说明,主要介绍了在设计中所采用的相关的技术,并对web层次结构

21、和Struts 2+Spring+Hibernate架构的优点做了简要的说明。随后重点介绍了数据库的总体结构设计,主要是根据单位四要素(监管场所、监管民警、监管对象、各类财物)之间的关系设计出表与表之间的关系,设计出表与表的关系是全局性的工作,根据以上的设计完成建表、建库的工作,最后由建好的数据库自动生成映射文件。参考文献1 赵宏波,王琬茹基于Hibernate和Struts的J2EE应用开发科技信息,2009 vol 25(4):4252 萨师煊,王珊数据库系统概论(第三版)北京:高等教育出版社,2004.1242.3 孔凡航oracle 9i 中文版基础教程(第二版)北京:清华大学出版社,

22、2007.1157.4 周艳杰,温敏,伍应环.数据表的范式分析中国高新技术企业,vol. 02(24): 159-159.5 杨垚面向对象的关系数据库设计湖北造纸,2009 vol22(1):4749.6 耿小芬面向对象的模型库与数据库接口技术科技情报开发与经济,2009 vol69 (8):139140.7 周菊数据库应用基础安徽农村金融,2008 vol31(1):4950.8 盖国强深入浅出Oracle(第一版)北京:人民邮电出版社,2006.91161.9 付京周精通Hibernate 3.0-java 数据库持久层开发实践(第一版)北京:人民邮电出版社,2007.1160Regula

23、tion of Information Platforms in the Design of the Overall Structure of the DatabaseGuo Zheng-zheng(School of Physic and Electronic Engineering, Anyang Normal University ,Anyang, Henan 455002)Abstract: The database to read and write is a very time-consuming operations and resources, when a large num

24、ber of users directly access the database at the same time, the efficiency is very low, if the persistent data from the database every time there would be no need to read data directly in memory operation of the data, thus saving a database of resources, but also a reflection of the system to speed

25、up the pace. Increase the persistence layer has been developed to improve the efficiency of the software architecture more clearly, in the coding and system maintenance easier. Especially in the large-scale applications inside will be more favorable. At the same time, persistence layer as a separate

26、 layer, it can be for the independent development of a layer of software packages to a wide range of applications to achieve data persistence, and the provision of services for the upper. Hibernate is one such tool, it allows programmers to object-oriented way of thinking to deal with the relationship between the base and the types of databases, so that the project development of a more object-oriented.Keywords: Hibernate; data persistence; object-relational mapping

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2