快速业务通道

hibernate O/R映射之基础 - 编程入门网

作者 佚名技术 来源 NET编程 浏览 发布时间 2012-06-18

hibernate O/R映射之基础

时间:2011-03-07

hibernate(以下简称hiber)的第一编学习终于结束了。学习的过程中,总结出来一些经验及学习的笔记,特拿出来与大家共享之,由于我能力有限,不能对hiber做到精通,所以还请大家鉴别,如发现有什么错误,还望不吝指教,在此谢谢各位达人的斧正。学hiber的过程中,我买了本书:《深入浅出hibernate》,夏昕,曹晓刚,唐勇合著的,自我感觉书写的不错,真正的做到了深入浅出。但不足之处鄙人觉得事例太少,实战不佳。需要大家自己多想办法来实现一些应用,只有这样才能真正的体会其中之精髓,为己所用。

刚接触hiber的时候,在网上找了篇如何学习hiber的文章,认真品读后,牢记作者说的不能为了学习hiber而学习,而应该从更高层次的去理解它的内涵。这篇文章咱jr上也有http://www.javaresearch.org/article/24993.htm,大家在学习的时候可以看看。

hiber的主要任务是实现数据的持久层操作,而何谓持久层?可以理解为:在系统逻辑的层面上,专注于实现数据持久化的一个相对独立的领域。hiber所要完成的是实现在这个领域中的数据操作,而这个完成并不是一般的只要实现最终目的就算完成的完成,它所追求的性能消耗小,耦合度小,数据封装性强等等才是它真正意义上的完成数据的持久层操作。

hiber的基础配置及使用在此不再多讲,如果你准备好了学hiber这些不是你的障碍。下面我们讨论真正属于障碍的部分。hiber的o/r映射o:object,r:relational。放在一起就是对象 关系。而hiher本身应该算是java的面向对象特性与传统关系型数据之间矛盾的产物。又基于对web及hiber的基础性了解,那么o/r映射无疑就成了orm框架中最为关键的内容。

在学习or映射之前,我们要先对hiber的基本数据类型有所了解。

实体映射技术作为类与表之间的联系纽带,在orm实现中起着至关重要的作用。对于hiber用户而言,映射关系更多的体现在配置文件的维护过程中。hiber选用xml作为其映射配置文件的好处自不用说,只要对xml知识有所了解,大家就可以体会到这一点。

我们在配置o/r映射的时候,首先是

1.类名与表名的映射,

2.接着是主键映射,

3.最后是字段映射。

一个完整o/r映射建立的基础是数据库表的存在,然后由数据库表产生类表映射配置媒介.hbm.xml文件。最后写出实体类,即由数据库表映射出来的java类。

我这里有一份完整的o/r映射,大家可以看一下:

按照上面的步骤,首先有数据库表:

CREATE TABLE reg ( Id int(6) unsigned NOT NULL auto_increment, username varchar(16) default NULL, password varchar(20) default NULL, phone int(11) default NULL, email varchar(30) default NULL, address varchar(50) default NULL, sex varchar(4) default NULL, PRIMARY KEY (Id) ) ENGINE=InnoDB DEFAULT CHARSET=gbk;

hibernate O/R映射之基础(2)

时间:2011-03-07

在数据表的基础上建立.hbm.xml文件:

< ?xml version="1.0" encoding="UTF-8"?> < !DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD 3.0//EN" "http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd"> < hibernate-mapping> < class name="mypack.Customer" table="reg"> < comment>Users may bid for or sell auction items.< /comment> < id name="id" column="id" type="int"> < generator class="native"/> < /id> < property name="username" not-null="true" column="username" t

凌众科技专业提供服务器租用、服务器托管、企业邮局、虚拟主机等服务,公司网站:http://www.lingzhong.cn 为了给广大客户了解更多的技术信息,本技术文章收集来源于网络,凌众科技尊重文章作者的版权,如果有涉及你的版权有必要删除你的文章,请和我们联系。以上信息与文章正文是不可分割的一部分,如果您要转载本文章,请保留以上信息,谢谢!

分享到: 更多

Copyright ©1999-2011 厦门凌众科技有限公司 厦门优通互联科技开发有限公司 All rights reserved

地址(ADD):厦门软件园二期望海路63号701E(东南融通旁) 邮编(ZIP):361008

电话:0592-5908028 传真:0592-5908039 咨询信箱:web@lingzhong.cn 咨询OICQ:173723134

《中华人民共和国增值电信业务经营许可证》闽B2-20100024  ICP备案:闽ICP备05037997号