您好,欢迎访问三七文档
当前位置:首页 > 商业/管理/HR > 咨询培训 > 13-Hibernate入门(上)笔记
E-Mail:mldnqa@163.comORMapping:对象关系映射操作数据库使用SQL语句通过一个类的操作来代表数据库中的操作类中的方法ÆSQL语句Hibernate是一个ORMapping的实现,所以,主要功能就是操作数据库(以对象的形式操作数据库)E-Mail:mldnqa@163.comE-Mail:mldnqa@163.comE-Mail:mldnqa@163.comE-Mail:mldnqa@163.comE-Mail:mldnqa@163.comE-Mail:mldnqa@163.com持久化类:ORM的主要特点:对象Æ数据库类和数据库关系的映射应用程序的开发\E-Mail:mldnqa@163.comE-Mail:mldnqa@163.comE-Mail:mldnqa@163.com今天的主要关注点:Session、SessionFactory、ConfigurationTransaction、QueryE-Mail:mldnqa@163.com·POJO类:只包含setter及getter方法的类·HBM映射:描述类和表之间关系E-Mail:mldnqa@163.comE-Mail:mldnqa@163.com同样使用Oracle数据库数据库创建脚本:DROPTABLEperson;CREATETABLEperson(idvarchar(32)notnullprimarykey,namevarchar(20)notnull,passwordvarchar(20)notnull,sexvarchar(2),emailvarchar(30));--事务提交:commit;E-Mail:mldnqa@163.com使用Eclipse3.1+MyEclipse进行开发对MyEclipse进行配置:使Eclipse中的MyEclipse插件能够生成HBM文件hibernate.cfg.xml:对Hibernate环境配置的:包括使用的数据库或数据源方言:所要使用的数据库类型POJO类的名称最好与表名称一致:表person,POJO类名称:Person建立映射文件主键生成方式:assigned:指派,即由用户自行管理//HBM根元素,指定POJO类所在的包hibernate-mappingpackage=org.lxh.hibernate.demo01//指定Person类与PERSON表的映射E-Mail:mldnqa@163.comE-Mail:mldnqa@163.comclassname=Persontable=PERSON//name表示Person类中的属性名字//column:表示表中的字段名字//type:类型idname=idcolumn=IDtype=string//主键的生成方式:assigned:表示由用户自行管理generatorclass=assigned//id//表示Person类中与表中其他字段的映射//name:Person类中的属性名称//column:表中的字段名称//type:类型//not-null:不允许为空propertyname=namecolumn=NAMEtype=stringnot-null=true/propertyname=passwordcolumn=PASSWORDtype=stringnot-null=true/propertyname=sexcolumn=SEXtype=string/propertyname=emailcolumn=EMAILtype=string//class/hibernate-mapping此文件完成Person类到PERSON表的关系取得操作数据库的Session:Session是一个接口,必须通过其他类实例化,格式是固定的//找到Hibernate配置Configurationconfig=newConfiguration().configure();//从配置中取出SessionFactorySessionFactoryfactory=config.buildSessionFactory();//从SessionFactory中取出一个Sessionthis.session=factory.openSession();通过正常配置之后,发现数据无法存入事务处理,在插入完成之后,必须将事务提交:Transaction使用Hibernate操作数据库,代码量很少,由Hibernate完成用户就感觉像使用对象一样去使用数据库所有的操作过程都是通过POJO类完成主键生成方式:assigned:指派·Sequence:自动增长的数据段·uuid.hex:生成一个32位,不会重复的主键E-Mail:mldnqa@163.comE-Mail:mldnqa@163.comQuery对象、Transaction对象,都是通过session取得的E-Mail:mldnqa@163.comE-Mail:mldnqa@163.comHQL:Hibernate查询语言:E-Mail:mldnqa@163.com
本文标题:13-Hibernate入门(上)笔记
链接地址:https://www.777doc.com/doc-4506742 .html