- 浏览: 95040 次
- 性别:
- 来自: 深圳
-
最新评论
文章列表
对象和关系数据库之间的映射通常是用一个XML文档(XML document)来定义的。这个映射文档被设计为易读的, 并且可以手工修改。映射语言是以Java为中心,这意味着映射文档是按照持久化类的定义来创建的, 而非表的定义。
请注意,虽然很多Hibernate用户选择手写XML映射文档,但也有一些工具可以用来生成映射文档, 包括XDoclet,Middlegen和AndroMDA。
让我们从一个映射的例子开始:
<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC
"- ...
- 2008-06-16 16:47
- 浏览 1590
- 评论(0)
(译者注:在阅读本章的时候,以后整个手册的阅读过程中,我们都会面临一个名词方面的问题,那就是“集合”。"Collections"和"Set"在中文里对应都被翻译为“集合”,但是他们的含义很不一样。Collections是一个超集,Set是其中的一种。大部分情况下,本译稿中泛指的未加英文注明的“集合”,都应当理解为“Collections”。在有些二者同时出现,可能造成混淆的地方,我们用“集合类”来特指“Collecions”,“集合(Set)”来指"Set",一般都会在后面的括号中给出英文。希望大家在阅读时联系上下文理解,不要造成误解。 ...
- 2008-06-16 16:45
- 浏览 1006
- 评论(0)
Hibernate一共包括了23个jar包,令人眼花缭乱。本文将具体讲解Hibernate每个jar包的作用,便于你在应用中根据自己的需要进行取舍。 下载Hibernate,例如2.0.3稳定版本,解压缩,可以看到一个hibernate2.jar和lib目录下有22个jar包: hibernate ...
- 2008-06-16 16:43
- 浏览 809
- 评论(0)
@ Hibernate3.0 àJBOSS
@ ORM à「对象/对应关系」(Object/Relational Mapping)
@ Hibernate3.0 依赖底层的JDBC2.0
Hibernate入门 - 包作用详解 (25个jar)
@必须的jar
hibernate3.0.jar: 必须使用的jar包
antlr.jar: Hibernate使用ANTLR来产生查询分析器
EHCache.jar: Hibernate可以使用不同cache缓存工具作为二级缓存。缺省的cache缓存
cglib-asm.jar: Hibernate用它来实现PO字节码的动态生成
- 2008-06-16 16:39
- 浏览 943
- 评论(0)
Criteria:
Criteria criteria = session.createCriteria(User.class);
1)criteria.add(Restrictions.gt("age", new Integer(20)));
2)criteria.add(Restrictions.lt("age", new Integer(40)));
3)criteria.add(Restrictions.or(Restrictions.eq("age", new Integer(20)), Restrictions.isNull ...
- 2008-06-16 16:37
- 浏览 1243
- 评论(0)
hiberate缓存 一般而言,ORM的数据缓存应包含如下几个层次:
1. 事务级缓存(Transcation Layer Cache)
2. 应用级/进程级缓存(Application/Process Layer Cache)
3. 分布式缓存(Cluster Layer Cache)
Hibernate数据缓存(Cache)分为两个层次,以Hibernate语义加以区分,
可分为:
1. 内部缓存(Session Level,也称为一级缓存)
2. 二级缓存(SessionFactory Level,也称为二级缓存)
Hibern ...
- 2008-06-16 16:35
- 浏览 933
- 评论(0)
第 8 章 关联关系映射
8.1. 介绍
关联关系映射通常情况是最难配置正确的。在这个部分中,我们从单向关系映射开始,然后考虑双向关系映射,由浅至深讲述一遍典型的案例。在所有的例子中,我们都使用 Person和Address。
我们根据映射关系是否涉及连接表以及多样性来划分关联类型。
在传统的数据建模中,允许为Null值的外键被认为是一种不好的实践,因此我们所有的例子中都使用不允许为Null的外键。这并不是Hibernate的要求,即使你删除掉不允许为Null的约束,Hibernate映射一样可以工作的很好。
8.2. 单向关联(Unidirection ...
- 2008-06-16 16:34
- 浏览 1034
- 评论(0)
第 11 章 与对象共事
Hibernate是完整的对象/关系映射解决方案,它提供了对象状态管理(state management)的功能,使开发者不再需要理会底层数据库系统的细节。 也就是说,相对于常见的JDBC/SQL持久层方案中需要管理SQL语句,Hib ...
- 2008-06-16 16:32
- 浏览 1103
- 评论(0)
第 14 章 批量处理(Batch processing)
使用Hibernate将 100 000 条记录插入到数据库的一个很自然的做法可能是这样的
Session session = sessionFactory.openSession();
Transaction tx = session.beginTransaction();
for ( int i=0; i<100000; i++ ) {
Customer customer = new Customer(.....);
session.save(customer);
}
tx.commit();
session.c ...
- 2008-06-16 16:29
- 浏览 2162
- 评论(0)
第 20 章 提升性能
20.1. 抓取策略(Fetching strategies)
抓取策略(fetching strategy) 是指:当应用程序需要在(Hibernate实体对象图的)关联关系间进行导航的时候, Hibernate如何获取关联对象的策略。抓取策略可以在O/R映射的元数据中声明,也可以在特定的HQL 或条件查询(Criteria Query)中重载声明。
Hibernate3 定义了如下几种抓取策略:
连接抓取(Join fetching) - Hibernate通过 在SELECT语句使用OUTER JOIN(外连接)来 获得对象 ...
- 2008-06-16 16:25
- 浏览 1026
- 评论(0)
第 21 章 工具箱指南
可以通过一系列Eclipse插件、命令行工具和Ant任务来进行与Hibernate关联的转换。
除了Ant任务外,当前的Hibernate Tools也包含了Eclipse IDE的插件,用于与现存数据库的逆向工程。
Mapping Editor: Hibernate XML映射文件的编辑器,支持自动完成和语法高亮。它也支持对类名和属性/字段名的语义自动完成,比通常的XML编辑器方便得多。
Console: Console是Eclipse的一个新视图。除了对你的console配置的树状概览,你还可以获得对你持久化类及其关联的交互式视图。Con ...
- 2008-06-16 16:23
- 浏览 1456
- 评论(0)
第 3 章 体系结构(Architecture)
3.1. 概况(Overview)
一个非常简要的Hibernate体系结构的概要图:
这个图可以看出,Hibernater使用数据库和配置信息来为应用程序提供持久化服务(以及持久的对象)。
我们来更详细地看一下 ...
- 2008-06-16 16:20
- 浏览 1773
- 评论(0)