- 浏览: 100953 次
- 性别:
- 来自: 湖南郴州
-
最新评论
-
coosummer:
推荐使用http://buttoncssgenerator.c ...
button的css属性
文章列表
第16章 条件查询(Criteria Queries)
具有一个直观的、可扩展的条件查询API是Hibernate的特色。
16.1.创建一个Criteria 实例
org.hibernate.Criteria接口表示特定持久类的一个查询。Session是 Criteria实例的工厂。
Criteria crit = sess.createCriteria(Cat.class);
crit.setMaxResults(50);
List cats = crit.list();
16.2.限制结果集内容
一个单独的查询条件是org.hibernate.criterio ...
- 2013-06-09 21:08
- 浏览 510
- 评论(0)
第15章HQL: Hibernate查询语言
Hibernate配备了一种非常强大的查询语言,这种语言看上去很像SQL。但是不要被语法结构 上的相似所迷惑,HQL是非常有意识的被设计为完全面向对象的查询,它可以理解如继承、多态和关联之类的概念。 ...
- 2013-06-09 21:08
- 浏览 242
- 评论(0)
第14章批量处理(Batch processing)
使用Hibernate将 100 000 条记录插入到数据库的一个很自然的做法可能是这样的
Session session = sessionFactory.openSession();
Transaction tx = session.beginTransaction();
for ( int i=0; i<100000; i++ ) {
Customer customer = newCustomer(.....);
session.save(customer);
}
tx.commit();
session ...
- 2013-06-09 21:06
- 浏览 491
- 评论(0)
第13章 拦截器与事件(Interceptors and events)
应用程序能够响应Hibernate内部产生的特定事件是非常有用的。这样就允许实现某些通用的功能 以及允许对Hibernate功能进行扩展。
13.1.拦截器(Interceptors)
Interceptor接口提供了从会话(session)回调(callback)应用程序(application)的机制, 这种回调机制可以允许应用程序在持久化对象被保存、更新、删除或是加载之前,检查并(或)修改其属性。一个可能的用途,就是用来跟踪审核(auditing)信息。例如:下面的这个拦截器,会在一个实现了 Audit ...
- 2013-06-09 21:06
- 浏览 222
- 评论(0)
第12章事务和并发
Hibernate的事务和并发控制很容易掌握。Hibernate直接使用JDBC连接和JTA资源,不添加任何附加锁定行为。我们强烈推荐你花点时间了解JDBC编程,ANSI SQL查询语言和你使用的数据库系统的事务隔离规范。Hibernate只添加自动版本管理,而不会锁 定内存中的对象,也不会改变数据库事务的隔离级别。基本上,使用 Hibernate就好像直接使用JDBC(或者JTA/CMT)来访问你的数据库资源。
除了自动版本管理,针对行级悲观锁定,Hibernate也提供了辅助的API,它使用了 SELECT FOR UPDATE的SQL语法。本章后面会讨论这个AP ...
- 2013-06-09 21:05
- 浏览 559
- 评论(0)
第11章与对象共事
Hibernate是完整的对象/关系映射解决方案,它提供了对象状态管理(state management)的功能,使开发者不再需要理会底层数据库系统的细节。也就是说,相对于常见的JDBC/SQL持久层方案中需要管理SQL语句,Hibernate采用了更自然的面向对象的视角来持久化Java应用中的数据。
换句话说,使用Hibernate的开发者应该总是关注对象的状态(state),不必考虑SQL语句的执行。 这部分细节已经由Hibernate掌管妥当,只有开发者在进行系统性能调优的时候才需要进行了解。
11.1.Hibernate对象状态(object states) ...
- 2013-06-09 21:04
- 浏览 585
- 评论(0)
第10章继承映射(Inheritance Mappings)
10.1.三种策略
Hibernate支持三种基本的继承映射策略:
·每个类分层结构一张表(table per class hierarchy)
·每个子类一张表(table per subclass)
·每个具体类一张表(table per concrete class)
此外,Hibernate还支持第四种稍有不同的多态映射策略:
·隐式多态(implicitpolymorphism)
对于同一个继承层次内的不同分支,可以采用不同的映射策略,然后用隐式多态来完成跨越整个层次的多态。但是在同一个< ...
- 2013-06-09 21:03
- 浏览 545
- 评论(0)
第9章组件(Component)映射
Component这个概念在Hibernate中几处不同的地方为了不同的目的被重复使用.
9.1.依赖对象(Dependent objects)
Component是一个被包含的对象,它作为值类型被持久化,而非一个被引用的实体。“component(组件)”这一术语指的是面向对象的合成概念(而并不是系统构架层次上的组件的概念)举个例子, 你可以对人(Person)如以下这样来建模:
public class Person {
private java.util.Date birthday;
private Name name;
...
- 2013-06-09 21:03
- 浏览 527
- 评论(0)
第8章关联关系映射
8.1.介绍
关联关系映射通常情况是最难配置正确的。在这个部分中,我们从单向关系映射开始,然后考虑双向关系映射,由浅至深讲述一遍典型的案例。在所有的例子中,我们都使用Person和Address。
我们根据映射关系是否涉及连接表以及多样性来划分关联类型。
在传统的数据建模中,允许为Null值的外键被认为是一种不好的实践,因此我们所有的例子中都使用不允许为Null的外键。这并不是Hibernate的要求,即使你删除掉不允许为Null的约束,Hibernate映射一样可以工作的很好。
8.2.单向关联(Unidirectional associations)
...
- 2013-06-09 21:01
- 浏览 529
- 评论(0)
第7章集合类(Collections)映射
7.1.持久化集合类(Persistent collections)
(译者注:在阅读本章的时候,以后整个手册的阅读过程中,我们都会面临一个名词方面的问题,那就是“集合”。"Collections"和"Set"在中文里对应 ...
- 2013-06-09 21:00
- 浏览 838
- 评论(0)
第6章对象/关系数据库映射基础(BasicO/R Mapping)
6.1.映射定义(Mapping declaration)
对象和关系数据库之间的映射通常是用一个XML文档(XML document)来定义的。这个映射文档被设计为易读的,并且可以手工修改。映射语言是以Java为中心,这意味着映射文档是按照持久化类的定义来创建的, 而非表的定义。
请注意,虽然很多Hibernate用户选择手写XML映射文档,但也有一些工具可以用来生成映射文档,包括XDoclet,Middlegen和AndroMDA。
让我们从一个映射的例子开始:
<?xml version=& ...
- 2013-06-09 20:56
- 浏览 675
- 评论(0)
ARM RealView 2.2 (微电子设计)
下载地址:http://www.9iv.com/down/soft/274.htm?eid=217990http://lib.verycd.com/2005/11/07/0000073497.html
全名:ARM RealView Developer Suite 2.2 最新完整版!
强大的微电子设计、ARM集成开发工具、嵌入式系统设计
ARM,既可以认为是一个公司的名字,也可以认为是对一类微处理器的通称,还可以认为是一种技术的名字。ARM RealView DEVELOPER系列包括RealView开发包,它含有先 ...
- 2013-06-09 15:22
- 浏览 885
- 评论(0)
在应用程序中,用来实现业务问题实体的(如,在电子商务应用程序中的Customer和Order) 类就是持久化类。不能认为所有的持久化类的实例都是持久的状态——一个实例的状态也可能 是瞬时的或脱管的。
如果这些持久化类遵循一些简单的规则,Hibernate能够工作得最好,这些规则被称作, 简单传统Java对象(POJO:Plain Old Java Object)编程模型。但是这些规则没有一个是必需的。 实际上,Hibernate3对于你的持久化类几乎不做任何设想。你可以用其他的方法来表达领域模型: 比如,使用Map实例的树型结构。
5.1.一个简单的POJO例子
大多数Java ...
- 2013-06-08 22:15
- 浏览 540
- 评论(0)
由于Hibernate是为了能在各种不同环境下工作而设计的, 因此存在着大量的配置参数. 幸运的是多数配置参数都 有比较直观的默认值, 并有随Hibernate一同分发的配置样例hibernate.properties (位于etc/)来展示各种配置选项. 所需做的仅仅是将这个样例文件复制到类路径 (classpath)下做一些自定义的修改.
4.1.可编程的配置方式
一个org.hibernate.cfg.Configuration实例代表了一个应用程序中Java类型 到SQL数据库映射的完整集合. Configuration被用来构建一个(不可变的 (immutable)) ...
- 2013-06-08 22:14
- 浏览 549
- 评论(0)
3.1.概况(Overview)
一个非常简要的Hibernate体系结构的概要图:
从这个图可以看出,Hibernater使用数据库和配置信息来为应用程序提供持久化服务(以及持久的对象)。
我们来更详细地看一下Hibernate运行时体系结构。由于Hiber ...
- 2013-06-08 22:14
- 浏览 363
- 评论(0)