基于hibernate技术的品种数据库设计

来源 :科技与企业 | 被引量 : 0次 | 上传用户:liongliong505
下载到本地 , 更方便阅读
声明 : 本文档内容版权归属内容提供方 , 如果您对本文有版权争议 , 可与客服联系进行内容授权或下架
论文部分内容阅读
  【摘要】介绍了hibernate技术的原理与特性,以及在品种数据库中的设计与应用,展示了hibernate技术的优点,提出了品种對象的逻辑运算假设。
  【关键词】Hibernate;品种数据库;对象
  Abstract:Introduces the principle and characteristics of Hibernate technology, as well as the design and application of the seed database, display the advantages of Hibernate technology, the seed of object logic hypothesis.
  1、引言
  近年来,伴随着生物信息技术的研究开展以及品种数字化管理需求的上升,品种数据库的研究与管理越来越显得重要,传统的关系型数据库对于表现相对独立的品种表现尚可,但是对于表达具有遗传、继承、多态(生物多样性)、突变等特性的种子特征则显得无能为力。而最近在java技术领域异军突起的hibernate技术则很完美的解决了这一问题,它的“面向对象”技术特征可以对种子品种的上述生物学特性进行表达,并可以进行抽象的数据逻辑操作。
  2、hibernate技术的基本原理与品种的数字表达
  2.1hibernate的基本原理
  Hibernate是一个轻量级的对象映射框架,它主要技术特点就是把数据库的内容对象化,使得每一条记录都对应一个对象的实例,而数据一旦变成了对象的实例,就自然而然的具备了对象的特征,即继承、多态、封装等。对于种子数据的操作自然就变成了”面向对象”的操作。作为数据对象的种子,具有状态,即对象的数据值。对象还有操作,就是对于对象本身数据值的操作。这样科研人员就可以按照对自然事物的认知习惯来对数据进行操作,而不是按照机器的思维去研究自然事物。利用hibernate框架映射后台数据处理类,把较为复杂的数据库操作都封装在DAO(data access object)中,由DAO提供一些数据访问接口,那么程序员只要调用这些接口,就实现了原本需要复杂的Structured Query Language(结构化查询语言)才能完成的功能。
  2.2品种的数字表达
  种子品种具有各种各样的性状,以水稻为例,以下为可用浮点数表示性状参数,生育日数、活动积温、株高、穗长等;以逻辑数据类型表示的是否抗倒伏特性;字符串类型的数据如品种名称、配套栽培技术、母本等等。传统的数据库记录方式只是将数据直接存储到数据库中供程序调用,如下所示:
  (注:以上数据仅供举例,具体数据可能有差异)
  但是,经过hibernate框架的映射处理,这些数据将会被映射为数据对象,由静态数据变成具有多种状态属性及操作的动态数据。
  上述数据表格将会被映射成class rice。每个字段都将对应class中的属性,每个相对应的属性都有get和set方法来获得或者修改对象的属性值。这样,水稻就可以抽象为一个class rice,这个抽象的class具有所有水稻的一般特性,那么任何一个水稻品种都是继承于rice这个抽象类,并且变异或者进化出新的特性。
  3、基于hibernate技术的品种数据库系统设计
  3.1三层结构设计
  品种数据库按照其功能划分为表示层,业务逻辑层和数据层。表示层负责与用户进行交互,负责将数据传输到业务逻辑层,并且将服务器处理完的数据回馈到用户。业务逻辑层负责表达程序的主题思想,是核心部分,它负责将用户数据处理后提交到数据层,或者将数据从数据库中提出发送到表示层。数据层负责与数据库打交道,所有与数据库相关的操作都封装在这一层,hibernate主要位于数据层与逻辑层之间,我们利用hibernate创建的DAO(数据访问对象)就位于数据层,里面包含对品种数据库的操作,例如增加、删除、修改、查询等等。
  3.2品种数据库应用的关键步骤
  3.2.1创建hibernate的配置文件和映射文件
  这两个文件可以由集成开发环境自动生成,这里就简单的说一下它们的作用,Hibernate配置文件主要负责与数据库进行连接,其中包含数据库所在服务器的ip端口,用户名和密码,以及应用的数据库方言等等,一般以xml后缀形式存在。映射文件主要的作用就是将数据库中的表与实体类相对应,例如水稻表就对应水稻的class,玉米表就对应玉米的class,该文件一般以hbm后缀存在。
  3.2.2获得数据工厂并存储品种数据
  sessionFactory=new AnnotationConfiguration().configure().buildSessionFactory();
  public static SessionFactory getSessionFactory() {return sessionFactory;}
  Session session=HibernateUtil.getSessionFactory().openSession();
  tx=session.beginTransaction();
  session.save(pinzhong);
  tx.commit();
  }
  3.2.3以dao(数据访问对象)的方式提供数据接口
  为了对三层结构中的业务逻辑层提供数据,Hibernate在品种数据访问对象中提供创建和存储接口、品种对象的修改和删除接口、按照品种对象的唯一id查询并获得品种对象的接口、获取全部品种对象的接口。这里面所说的品种对象,就是由在3.2.1中提到的映射文件生成的实体类对象、它们对应着数据库中记载着的品种记录,品种的id用来保证每条记录的唯一性。
  3.3设计针对品种遗传特性的逻辑运算
  由于数据经由hibernate映射成为了对象,对象具有属性和操作,那么在class的设计中就可以设计加载杂交操作,还是以水稻为例,水稻a,b,c都继承于水稻这个class,水稻c=水稻b.add(水稻a),也就是说水稻c的父本和母本分别是水稻b和水稻c,如果我们在数据库中有父母本显性基因和隐性基因的记录,那么对这两种基因进行“逻辑与运算”,我们就可以根据程序生成指定父母本杂交后代的大致估算结果。
  4、结束语
  将hibernate框架技术应用到种子品种数据库中,对于由众多参数构成的具有继承变异等生物特性的品种数据,实例证明,具有一定的优势和可行性。将“品种数据表”映射到“品种实体类”使其具有“类对象”功能,对于今后的种子品种研究工作是一个很好的铺垫,具有一定的推广意义。
  参考文献
  [1]宋汉增,沈琳.利用Hibernate对象持久化服务简化Java数据库访问[J].计算机应用,2003年12期
  [2]朱庆伟,吴宇红.一种对象/关系映射框架的分析和应用[J].电子科技,2004年01期
  [3]李晓锋,许时雍.水稻品种资源对白叶枯病抗性研究初报[J].安徽农业科学,1980年02期
  [4]祝文军.基于Struts框架和Hibernate技术的Web应用的设计与实现[D].大连理工大学,2006年
其他文献
在自然灾害可能发生的情况下,危险品运输道路安全会受到严重影响。为确定危险品运输的最佳路线,论文以同时降低运输时间和运输风险为目标,确定了包括事故率、人口、环境、应急设
苏霍姆林斯基说:“世界上没有任何东西比人的个性更复杂.更丰富多彩。”作文是学生个体运用内部语言进行自我、真我、本我之间的交流过程,是学生个体生命成长的一个极富个性的表
2009年春晚上演的小品《不差钱》,令几亿人捧腹大笑,一夜之间小沈阳火了,那句经典台词“人生最痛苦的事……”更是深入人心。这不禁让我想到了作文教学,很多学生怕写作文,把作文当
【正】 本杂志第三十七期·载滇省实行军队职业教育一节·兹悉擬在省垣先行创设军队实业传习所·所中设所长一员·禀承军政司长·总理所内一切事务&#183
期刊
【摘要】高职院校服装工艺工作室是服装设计与工艺专业实训的基地。主要学习服装的剪裁、缝纫等工艺,着重培养具有较强服装制作技能的专业设计人才。本文在对服装工艺室设备及使用概况分析的基础上,对服装工艺室机器设备的维护及管理制度、管理中的注意事项、学生实训守则进行了浅要探讨。  【关键词】服装工艺室;设备;维护;管理  随着服装市场的蓬勃发展,服装工业的各种分工越来越细。加上服装专业的实践性强,因此,高职
【正】 美国全国職業教育社定於十二月十一日至十三日,在印第安拿拋立司舉行常年大會。函邀本世代表参与,当以为时不及,復书道谢。第請將開會詳情見示,以個参考云。第八年度
期刊
【正】 本杂誌自改刊小本。將满十期。承各地同志紛紛訂閱。致原印分數。不敷分配。一再添印。同人深为欣幸。自第五十一期始。謹當益求改進。期於尽美。以副读者諸君雅意为
期刊
朱斌魁先生前年由美赴欧时.本社托其调查英国职业教育.本篇所述.乃根据英国 Skilled Employment Apprenticement Association 应朱先生所徵求之材料.此会成立于一九○六年.专
期刊
【正】 三年前.芝加哥举行美国职业教育会议.一时称盛事.今则美国之职业教育.如本志四十一期所载.益形发展.上年底.乃复有迪脱劳哀Detriot 之大会.原发起者.为全国职业教育社
期刊
【正】 要做成功的工场管理员.便不能不有两种品格之培养.这两种品格是什么呢.一是对于自己的.一是对于工人的.现在分别说明.望已做或将做工场管理员者.加以注意.工场管理人
期刊