欢迎来到天天文库
浏览记录
ID:32032507
大小:3.17 MB
页数:59页
时间:2019-01-30
《【硕士论文】基于反射机制的轻量级Java持久层框架设计与实现.pdf》由会员上传分享,免费在线阅读,更多相关内容在教育资源-天天文库。
1、摘要目前,关系数据库仍然是使用最为广泛的存储持久化数据的方式。在Java中,有许多技术可以用于访问关系数据库,它们大致上可以分为两类:使用关系概念且基于SQL的技术,以及基于O/R映射的技术。JDBC是访问关系数据库的标准API,不过JDBC只是一个低级的调用级接口,直接使用它非常繁琐。iBATIS等映射工具对JDBC进行了封装,它们在一定程度上隐藏了JDBC的使用细节,同时保留了SQL的全部能力。但是有时候这些工具仍显低级:我们仍然需要维护遍布于代码或XML文件中的SQL语句。O/R映射工具(例如H
2、ibernate和某些JDO实现)为我们提供了透明持久化能力,使用这类工具,我们可以专注于业务逻辑而忘掉自己正在使用JDBC甚至RDBMS这一事实。O/R映射工具的缺点是它们过于复杂并且难以掌握。对于需要快速开发的应用来说,我们急需一种简洁的解决方案,它应该足够灵活同时容易使用。本文记录了一个持久层设计模式ReflectiveDAO,这是广泛使用的J2EE核心模式DataAccessObject的一个特例。应用ReflectiveDAO模式,定制可重用和易于维护的持久层方案相当容易。在Reflecti
3、veDAO模式的基础之上,本文进一步设计和实现了一个轻量级Java持久层框架,并将其命名为refldao。同现有持久层技术相比,refldao框架有其自身的特点。由于完全构建在标准的JavaSE类库(JDBCAPI和ReflectionAPI等)之上,refldao没有任何多余的依赖。ReflectiveDAO是支撑refldao的主要模式,反射的使用使得不用继承任何超类就可以得到DAO实例从而获得针对POJO的自动CIWD能力。另外,refldao还使用了许多Java5.0新特性(如Annotati
4、on、Generic、Vararg等)以便最大程度地简化用户的持久化操作。关键词:对象持久化设计模式框架反射ABSTRACTAtpresent,therelationaldatabaseisstillthemostwidelyusedwaytostorepersistentdata.InJava,therealeanumberoftechnologiescallbeusedtoaccessrelationaldatabases,whichcallbedividedintotwomajorcategor
5、ies:SQL—basedtechnologiesthatworkswithrelationalconcepts;andtechnologiesbased0nO/Rmapping.AlthoughJDBCisthestandardandmostpowerfulAPIforaccessingrelationaldatabases,itisonlyalow—levelcall-levelinterfacet11atisrelativelycumbersometousecorrectly.Toolslike
6、iBATISDataMapperale也i11wrappersabovemBC.TheyhidemanydetailsoftheuseofJDBCforUSwhileretainingthefullpowerofSQL.Nevertheless,t11eyalestillatthelower—level:wehavetomaintainSQLstatementswhichwidelyspreadincodesorXMLdocuments.O瓜mappingtoolssuchasHibernateand
7、someJDOimplementationsprovideUSwithtransparentpersistence,wecanconcentrateonourbusinesslogicsandignoretheexistenceofJDBCevenRDBMSwhenusingsuchtools.Unfortunately.O/Rmappingtoolsarealwaystoocomplexanddifficulttomaster.Forapplicationst11atneedtobedevelope
8、drapidly,weneedasimplesolution,whichshouldbeflexibleanduseable.ThispaperpresentsapatternnamedReflectiveDAOwhichisaspecialcaseoftheDataAccessObjectpattern.ByapplyingReflectiveDAO,customizingreusableandmaintainablepersistencelayerC
此文档下载收益归作者所有