




已阅读5页,还剩14页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
实体操作,增删改操作,Configuration,负责管理Hibernate的配置信息,Hibernate运行时需要获取一些底层的实现的基本信息。(数据库相关信息配置)Hibernate配置文件:Hibernate.cfg.xml或Hperties,二者的区别是在Hibernate.cfg.xml中可以配置需要加载的Hibernate映射文件。Configurationcfg=newConfiguration(),会默认读取perties文件。Configurationconfig=newConfiguration.configure();如果不希望用默认的配置文件Hibernate.cfg.xml,用户也可以指定配置文件名,Configuration,例如:Filefile=newFile(“D:myhibernate.xml”)Configurationconfig=newConfiguration.configure(flie);,SessionFactory,通过Configuration构建SessionFactory实例SessionFactory负责创建Session实例SessionFactorysession=config.buildSessionFactory();SessionFactory一旦创建完毕,即被赋予特定的配置信息。SessionFactory保存了对应当前数据库配置的所有映射关系。它采用了线程安全的设计,多线程可并发调用,一般一个应用针对一个数据库共享一个SessionFactory。,Session,意义上不同HttpSession,是Hibernate持久化操作的基础。HibernateSession与Hibernate等同于JDBCConnection与JDBC可透明的完成对象的增、删、改、查操作。Session实例由SessionFactory构建,HibernateO/R,HibernateO/R,表名类名映射主键映射属性映射,数据类型映射,Hibernate基本数据类型Java数据类型到到数据库特定数据类型的映射关联例如:将intege类型的属性age映射到库表字段age,Hibernate映射类型,Hibernate映射类型,Hibernate映射类型,实体类,可序列化:目的能够在HttpSession中保存实体类对象无参默认构造方法目的:使Hibernate可以通过Constructor.newInstance()构造实体对象,类表映射,通过以上配置,Hibernate可获得类与表的映射关系。即每个实体类的对象对应数据库表中的一条记录。,Id映射,定义了实体类的标识,即对应库表主键的类属性。name=“id”指定当前映射类中的属性id,对应表的主键字段。Column=“id”指定当前映射表的唯一标识(主键)为id字段,Id映射,type=“java.lang.Integer”指定当前字段的数据类型指定主键的生成方式,class=“native”表示主键的生成机制的实现方式交由Hibernate觉定。Hibernate将根据地层数据库适配器的的定义,采用不同数据库特定的主键生成方式。Assinged:主键由应用逻辑产生。,Id生成策略参考,increment用于为long,short或者int类型生成唯一标识。只有在没有其他进程往同一张表中插入数据时才能使用。在集群下不要使用。identity对DB2,MySQL,MSSQLServer,Sybase和HypersonicSQL的内置标识字段提供支持。返回的标识符是long,short或者int类型的。sequence在DB2,PostgreSQL,Oracle,SAPDB,McKoi中使用序列(sequence),而在Interbase中使用生成器(generator)。返回的标识符是long,short或者int类型的。hilo使用一个高/低位算法高效的生成long,short或者int类型的标识符。给定一个表和字段(默认分别是hibernate_unique_key和next_hi)作为高位值的来源。高/低位算法生成的标识符只在一个特定的数据库中是唯一的。seqhilo使用一个高/低位算法来高效的生成long,short或者int类型的标识符,给定一个数据库序列(sequence)的名字。uuid用一个128-bit的UUID算法生成字符串类型的标识符,这在一个网络中是唯一的(使用了IP地址)。UUID被编码为一个32位16进制数字的字符串。guid在MSSQLServer和MySQL中使用数据库生成的GUID字符串。native根据底层数据库的能力选择identity,sequence或者hilo中的一个。在mysql中默认的是auto_increment,SQLSERVER中是identity.assigned让应用程序在save()之前为对象分配一个标示符。这是元素没有指定时的默认生成策略。select通过数据库触发器选择一些唯一主键的行并返回主键值来分配一个主键。foreign使用另外一个相关联的对象的标识符。通常和联合起来使用。sequence-identity一种特别的序列生成策略,使用数据库序列来生成实际值,但将它和JDBC3的getGeneratedKeys结合在一起,使得在插入语句执行的时候就返回生成的值。目前为止只有面向JDK1.4的Oracle10g驱动支持这一策略。注意,因为Oracle驱动程序的一个bug,这些插入语句的注释被关闭了。(原文:NotecommentsontheseinsertstatementsaredisabledduetoabugintheOracl
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 高职医卫类专业群特色专业建设思路
- 公司员工安全培训知识课件
- 楼顶防水的申请报告(3篇)
- 留守儿童协议合同(标准版)
- 经纪保密合同(标准版)
- 丽水职业安全培训中心课件
- D-L-a-Aminoadipoyl-L-Cysteinyl-D-Isodehydrovaline-CoA-生命科学试剂-MCE
- 《jsp程序设计》课件
- 防盗抢劫应急预案(仓库厂区)
- 河南省信阳市平桥区2024-2025学年五年级下学期4月期中数学试题含答案
- 水资源保护课件
- 2025年中国移动初级解决方案经理学习考试题库大全-上(单选题)
- 重难点梳理写作指导(讲义)-人教PEP版英语六年级上册
- 江苏苏州历年中考语文现代文之散文阅读13篇(截至2024年)
- 临床用血管理制度课件
- 体育行业反兴奋剂管理制度
- 2024年钛行业发展研究报告
- 护理管理的发展史
- 《以产地命名中药》课件
- 广西恒镒矿业贸易有限公司广西苍梧县古木口矿区金矿矿山地质环境保护与土地复垦方案
- 有限元模拟与磨损寿命预测结合-洞察分析
评论
0/150
提交评论