`
wsql
  • 浏览: 11860016 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
文章分类
社区版块
存档分类
最新评论

Hibernate的基本标签和映射

 
阅读更多
hibernate基本映射标签和属性
1.<hibernate-mapping>标签


(1) schema (可选): 数据库schema的名称。
(2) catalog (可选): 数据库catalog的名称。
(3) default-cascade (可选 - 默认为 none): 默认的级联风格。
(4) default-access (可选 - 默认为 property): Hibernate用来访问所有属性的策略。可以通过实现PropertyAccessor接口 自定义。
(5) default-lazy (可选 - 默认为 true): 指定了未明确注明lazy属性的Java属性和集合类, Hibernate会采取什么样的默认加载风格。
(6) auto-import (可选 - 默认为 true): 指定我们是否可以在查询语言中使用非全限定的类名(仅限于本映射文件中的类)。
(7) package (可选): 指定一个包前缀,如果在映射文档中没有指定全限定的类名, 就使用这个作为包名。 假若有两个持久化类,它们的非全限定名是一样的(就是两个类的名字一样,所在的包不一样),应该设置auto-import="false".如果把一个“import”的名字对应两个类,Hibernate会拋出一个异常hibernate-mapping元素允许嵌套多个<class>映射,但最好的做法是一个持久化类对应一个映射文件,并以持久化的超类名称命名。如:Xxx.hbm.xml

2.<class>标签
(1)name(可选):持久化类(或者接口)的Java全限定名。如果这个属性不存在,Hibernate将假定这是一个非POJO的实体映射
(2)table(可选-默认是类的非全限定名):对应数据库表名,生成DDL时数据表名,如果省略,则名称同持久化类名称
(3)dynamic-update(可选,默认为false):指定用于UPDATE的SQL将会在运行时动态生成,只更新那些被改过的字段
(4)dynamic-insert(可选,默认为false):指定用于insert的sql将会在运行时动态生成,并且只包含那些非空字段
(5) optimistic-lock(乐观锁定) (可选,默认是version): 决定乐观锁定的策略。
(6) lazy (可选): 通过设置lazy="false", 所有的延迟加载(Lazy fetching)功能将被全部禁用(disabled)。



3.<id>标签
<id>标签必须配置在<class>标签的第一个位置。由一个字段构成主键,<id>元素定义了该属性到数据库表主键字段的映射

(1)name:实体类的属性名字
(2)type:标识Hibernate类型的名字(省略则使用Hibernate默认类型),也可以自己配置类型(integer,long,short,float,double,character,byte,boolean,yes_no,true_false)
(3)column(可选-默认为属性名):主键字段的名字(省略则取name为字段名)
(4)length(可选):当type为varchar时,设置字段长度

<generator>元素(主键生成策略)
主键生成策略必须配置,用来为该持久化类的实例生成唯一的标识。
uuid:
用一个128-bit的UUID算法生成字符串类型的标识符,这在一个网络中是唯一的(使用了IP地址),UUID被编码为一个32位16进制数字的字符串,它的生成是由Hibernate生成,一般不会重复UUID包含:IP地址,JVM的启动时间,系统时间和一个计算器值。
native:
根据底层数据库的能力选择identity,sequence或者hilo中的一个(数据库自增)
assigned
让程序在save()之前为对象分配一个表示符。这是<generator>元素没有指定时的默认生成策略。(如果是手动分配,则需要设置此配置)


5.<property>标签
用于映射普通属性到表字段

注:如果实体类和实体类中的属性和SQL中的关键字重复,必须采用table或column重新命名

6.Hibernate完整映射实例:







































































分享到:
评论

相关推荐

    Hibernate学习笔记

    007 Hibernate 基本映射标签和属性介绍 008 多对一 关联映射 009 一对一 主键关联映射_单向 010 一对一 主键关联映射_双向 011 一对一 唯一外键关联映射_单向 012 一对一 唯一外键关联映射_双向 013 session_flush ...

    hibernate学习笔记

    hibernate基本映射(hibernate_basemapping) 4 class实体类---表 4 标签id 5 主键生成器Generator 6 多对一, 一对一, 一对多, 多对多 7 hibernate多对一关联映射(Hibernate_Many2One) 7 hibernate一对一主键关联...

    struts2+hibernate学习示例

    8、struts2基本标签的使用 9、struts2的Action实现,其中用到了两种方法 (1)UserAction类是比较方便的方法,本系统就只用到了UserAction类 (2)AddUserAction、DeleteUserAction、ViewUserAction是另外一种实现,...

    struts2+Hibernate+Spring学习示例

    8、struts2基本标签的使用 9、struts2的Action实现,其中用到了两种方法 (1)UserAction类是比较方便的方法,本系统就只用到了UserAction类 (2)AddUserAction、DeleteUserAction、ViewUserAction是另外一种实现,...

    低清版 大型门户网站是这样炼成的.pdf

    4.3.1 hibernate的基本映射数据类型 212 4.3.2 hibernate的主键映射 218 4.3.3 hibernate的实体映射 228 4.3.4 映射一对一关联关系 228 4.3.5 映射多对一单向关联关系 235 4.3.6 映射一对多双向关联关系 239 ...

    Grails 中文参考手册

    5.2.4 集合、列表和映射 5.3 持久化基础 5.3.1 保存和更新 5.3.2 删除对象 5.3.3 级联更新和删除 5.3.4 立即加载和延迟加载 5.3.4 悲观锁和乐观锁 5.4 GORM查询 5.4.1 动态查找器 5.4.2 条件查询 5.4.3 Hibernate...

    源码基于JSP的内容管理系统(hibernate3+struts2+spring2).rar

    Hibernate3作为一个优秀的持久层框架,负责处理与数据库的交互操作,实现了对象关系映射(ORM),使得开发人员可以用面向对象的方式操作数据库,而无需关心底层的SQL语句。这大大提高了开发效率,同时也降低了出错率...

    从J2SE到J2EE知识点介绍

    2. Java时间和日期类型的Hibernate映射类型 224 3. Java大对象类型的Hibernate映射类型 225 4. 关联关系映射 225 5. Hibernate的事务与并发 238 (十) 数据库 240 1. 数据库的基本概念 240 2. 数据模型 240 3. 关系...

    java web技术开发大全(最全最新)

    JSP+Servlet+Struts+Hibernate+Spring+Ajax》重点讲解了Struts 2、Speing和HIbernate框架的基础知识和高级技术,如Sruts 2中的*、类型转换、国际化和标签等,HIbe rna{e的会话、0/R映射和事务管理等,Spring中的...

    基本于J2EE的Ajax宝典.rar

    17.1.2 完成配置文件和映射文件 28 17.1.3 数据库的设计 31 17.2 实现 DAO 组件 31 17.2.1 DAO 接口定义 31 17.2.2 完成 DAO 组件的实现类 33 17.3 实现服务器处理类 35 17.4 实现客户端调用 40 17.4.1 暴露 ...

    JBoss Seam 工作原理、seam和hibernate的范例、RESTFul的seam、seam-gen起步、seam组件、配置组件、jsf,jboss、标签、PDF、注解等等

    1.4. Seam 和jBPM:待办事项列表(todo list)示例..................................................................................................... 32 1.4.1. 理解代码....................................

    java web开发技术大全

    JSP+Servlet+Struts+Hibernate+Spring+Ajax》重点讲解了Struts 2、Speing和HIbernate框架的基础知识和高级技术,如Sruts 2中的*、类型转换、国际化和标签等,HIbe rna{e的会话、0/R映射和事务管理等,Spring中的...

    从Java走向Java+EE+.rar

    第13章 Struts和Hibernate实例——两个与登录有关的实例 166 13.1 Struts和Hibernate的开发环境配置 166 13.1.1 数据库的安装和管理 166 13.1.2 Hibernate的安装 168 13.1.3 Struts的安装 169 13.2 实例一...

    OA系统毕业论文

    在View层上采用JSP来实现,其中也运用了比较基本的JSTL标签和HTML、CSS和JS。 本系统志在完成一个比较完善的权限管理,借鉴于著名的RBAC,即基于角色的访问控制(Role-Based Access Control),并结合我们的需求,...

    Grails权威指南

     4.6.1 使用get方法和exists方法进行基本查询  4.6.2 列举(listing),70排序(sorting)以及合计(counting)  4.6.3 用动态查找器(finder)查询  4.6.4 使用hql进行查询  4.6.5 按样本...

    JSF2.0快速入门的基本教程.ppt

    后面的例子将会有jsf和hibernate的内容,它都能给予很好的支持。由于myeclipse并不免费,所以我们除了讲解在ide中如何操作外,还会叙述手动操作的具体内容,以免过于依赖开发工具。用什么服务器都可以,这里采用了...

    Java语言基础下载

    HTML基本标签 422 标题元素 422 HTML格式 427 HTML实体 431 不可拆分的空格 431 HTML表格 439 表格 441 HTML列表 461 HTML图像 469 Img标签和src属性 469 HTML背景 475 内容总结 478 独立实践 479 第二十四章:HTML...

    Java Web程序设计教程

    8.3.6hibernate映射文件 180 8.3.7hibernate工作原理 182 8.4项目实战——新闻内容显示 183 本章小结 186 课后练习 187 第9章hibernate查询 188 9.1hibernate的数据检索策略 188 9.1.1立即检索 188 9.1.2...

    深入浅出Struts2(附源码)

    6.11 if、else和elseif标签 105 6.12 iterator标签 107 6.13 append标签 110 6.14 merge标签 111 6.15 generator标签 113 6.16 sort标签 116 6.17 subset标签 118 6.18 小结 119 第7章类型转换 120 7.1 ...

Global site tag (gtag.js) - Google Analytics