Hibernate Annotations
参考文档
3.2.0CR1
目录
前言
1.翻译说明
2.版权声明
前言
1.创建一个注解项目
1.1.系统需求
1.2.系统配置
2.实体Bean
2.1.简介
2.2.用EJB3注解进行映射
2.2.1.声明实体bean
2.2.1.1.定义表(Table)
2.2.1.2.乐观锁定版本控制
2.2.2.映射简单属性
2.2.2.1.声明基本的属性映射
2.2.2.2.声明列属性
2.2.2.
3.嵌入式对象(又名组件)
高中英语作文大全
2.2.2.4.无注解之属性的默认值
2.2..映射主键属性
2.2.4.映射继承关系
2.2.4.1.每个类一张表
2.2.4.2.每个类层次结构一张表
2.2.4.
3.连接的子类
2.2.4.4.从父类继承的属性
2.2.5.映射实体Bean的关联关系
2.2.5.1.一对一(One-to-one)
2.2.5.2.多对一(Many-to-one)
2.2.5.
3.集合类型
bnw2.2.5.4.用cascading实现传播性持久化(Transitive persistence)
2.2.5.5.关联关系获取
2.2.6.映射复合主键与外键
2.2.7.映射二级表(condary tables)
2.3.映射查询
2.3.1.映射EJBQL/HQL查询
2.3.2.映射本地化查询
2.4.Hibernate独有的注解扩展
2017元旦2.4.1.实体
2.4.2.标识符
2.4.
3.属性
2.4.
3.1.访问类型
2.4.
3.2.公式
2.4.
3.3.类型
2.4.
3.
4.索引
2.4.
3.5.@Parent
2.4.
3.6.生成的属性
2.4.4.继承
2.4.5.关于单个关联关系的注解
2.4.5.1.延迟选项和获取模式
2.4.6.关于集合类型的注解
2.4.6.1.参数注解
2.4.6.2.更多的集合类型
2.4.7.缓存
2.4.8.过滤器
2.4.9.查询
3.通过XML覆写元数据
3.1.原则
3.1.1.全局级别的元数据
3.1.2.实体级别的元数据
3.1.3.属性级别的元数据
3.1.
4.关联级别的元数据
4.Hibernate验证器
4.1.约束
4.1.1.什么是约束?
4.1.2.内建约束
4.1.3.错误信息
4.1.4.编写你自己的约束
violent
4.1.
5.注解你的领域模型
4.2.使用验证器框架
什么是报考点4.2.1.数据库schema层次验证
4.2.2.Hibernate基于事件的验证sorrowful
4.2.3.程序级验证
4.2.4.验证信息
5.Hibernate与Lucene集成
5.1.使用Lucene为实体建立索引
5.1.1.注解领域模型
ronan keating
5.1.2.启用自动索引
A.术语表
前言
WARNING!This is a translated version of the English Hibernate reference documentation.The translated version might not be up to date!However, the differences should only be very minor.Consult the English reference documentation if you are missing information or encounter a translation error.If you like to contribute to a particular translation,contact us on the Hibernate developer mailing list.
Translator(s):RedSaga Translate Team满江红翻译团队<> 1.翻译说明
本文档的翻译是在网络上协作进行的,也会不断根据Hibernate的升级进行更新。提供此文档的目的是为了减缓学习Hibernate的坡度,而非代替原文档。我们建议所有有能力的读者都直接阅读英文原文。若您对翻译有异议,或发现翻译错误,敬请不吝赐教,报告到如下地址:
表 1.Hibernate Annotation v3翻译团队
序
号
标题中文标题翻译1审2审
--Contents目录Liu Chang
#1Setting up an
annotations projec
创建一个注解项
目
melthaw
Zheng
Shuai
superq
#2Entity
Beans-Introduction
实体Bean-简介melthaw
Zheng
Shuai
superq
#3Entity
Beans-Mapping with
EJB3Annotations
实体Bean-用
EJB3注解进行映
射
melthaw
Zheng
Shuai
superq,
Liu
Chang,
Sean
Chan
#4Entity
Beans-Mapping
Queries
实体Bean-映射
查询proxyie
melthaw
Zheng
Shuai
superq,
Liu
Chang,
Sean
Chan
序
号
标题中文标题翻译1审2审
#5Entity
环境管理体系认证Beans-Hibernate
Annotation
Extensions
实体
Bean-Hibernate
独有的注解扩展
Sean Chan morning melthaw
#6Overriding metadata
through XML
通过XML覆写元
数据
icess melthaw
Sean
Chan
#7Hibernate Validator Hibernate验证
器
DigitalSonic morning melthaw
#8Hibernate Lucene
Integration
Hibernate与
Lucene集成
mochow morning melthaw
#9Appendix:Glossary附录:术语表mochow Liu
Chang
曹晓钢
关于我们
满江红.开源,
从成立之初就致力于Java开放源代码在中国的传播与发展,与国内多个
Java团体及出版社有深入交流。坚持少说多做的原则,目前有两个团队,“OpenDoc团队”与“翻译团队”,本翻译文档即为翻译团队作品。
OpenDoc团队已经推出包括Hibernate、iBatis、Spring、WebWork的多
份开放文档,并于2005年5月在Hibernate开放文档基础上扩充成书,
出版了原创书籍:《深入浅出Hibernate》,本书400余页,适合各个层次的Hibernate用户。(/hibernate_book.html)敬请支持。
致谢
在我们翻译Hibernate Annotation参考文档的同时,还有一位热心的朋
友也在进行着同样的工作,这位朋友就是icess(冰雨),由icess翻译的中文版的地址:
2.版权声明
Hibernate英文文档属于Hibernate发行包的一部分,遵循LGPL协议。本翻译版本同样遵循LGPL协议。参与翻译的译者一致同意放弃除署名权外对本翻译版本的其它权利要求。
您可以自由链接、下载、传播此文档,或者放置在您的网站上,甚至作为产品的一部分发行。但前提是必须保证全文完整转载,包括完整的版权信息和作译者声明,并不能违反LGPL协议。这里“完整”的含义是,不能进行任何删除/增添/注解。若有删除/增添/注解,必须逐段明确声明那些部分并非本文档的一部分。
前言
正如其他的ORM工具,Hibernate同样需要元数据来控制在不同数据表达形式之间的转化.在Hibernate 2.x里,多数情况下表示映射关系的元数据保存在XML 文本文件中.还有一种方式就是Xdoclet,它可以在编译时利用Javadoc中的源码注释信息来进行预处理.现在新的JDK标准(JDK1.5以上)也支持类似的注解功能,但相比之下很多工具对此提供了更强大更好用的支持.以IntelliJ
IDEA和Eclip为例,这些IDE工具为JDK5.0注解功能提供了自动完成和语法高亮功能.注解被直接编译到字节码里,并在运行时(对于Hibernate来讲就是启动的时候)通过反射读取这些注解,因此外部XML文件就不再需要了.
EJB3规范最终认可了透明化ORM的成功范例以及市场对于这种技术的兴趣.
EJB3规范标准化了ORM的基础API而且在任何ORM持久化机制中使用元数据.
Hibernate EntityManager实现了EJB3持久化规范中定义的编程接口和生命周期规则.在Hibernate Core的基础上再结合Hibernate Annotations就实现了一套完整(并且独立)的EJB3持久化解决方案.你可以结合三者来使用,也可以抛开EJB3编程接口和生命周期规则而独立使用注解,甚至只单独使用
Hibernate Core.这些都取决于项目的商业和技术上的实际需求.Hibernate允许你直接使用native APIs,如果有需要,甚至可以直接操作JDBC和SQL.
爱霸英语注意本文档基于Hibernate Annotations的预览版(遵从EJB 3.0/JSR-220最终草案).这个版本和新规范中定义的最终概念已经非常接近了.我们的目标是提供一套完整的ORM注解,包括EJB3的标准注解以及Hibernate3的扩展(后者是EJB3规范中没有涉及到的).最终通过注解你可以完成任何可能的映射.详情参考???.
EJB3最终草案修改了部分注解,www.hibernate/371.html提供了从上一个版本到最新版本的迁移指南.
第1章创建一个注解项目
1.1.系统需求
∙首先从Hibernate官方网站下载并解压Hibernate Annotations的发布包。
∙这个版本(预览版)要求使用Hibernate3.2.0.CR2或更高版本。请不要和老版本的Hibernate3.x混合起来使用。