摘要: 第12章事务和并发Hibernate的事务和并发控制很容易掌握。Hibernate直接使用JDBC连接和JTA资源,不添加任何附加锁定 行为。我们强烈推荐你花点时间了解JDBC编程,ANSI SQL查询语言和你使用 的数据库系统的事务隔离规范。Hibernate只添加自动版本管理,而不会锁 定内存中的对象,也不会改变数据库事务的隔离级别。基本上,使用 Hibernate就好像直接使用JDBC(或者JTA/CMT)来访问你的数据库资源。除了自动版本管理,针对行级悲观锁定,Hibernate也提供了辅助的API,它使用了 SELECT FOR UPDATE的SQL语法。本章后面会讨论这个API。我 阅读全文
posted @ 2011-08-23 22:14 天不行道我来之 阅读(159) 评论(0) 推荐(0) 编辑
摘要: 第11章与对象共事Hibernate是完整的对象/关系映射解决方案,它提供了对象状态管理(state management)的功能,使开发者不再需要理会底层数据库系统的细节。 也就是说,相对于常见的JDBC/SQL持久层方案中需要管理SQL语句,Hibernate采用了更自然的面向对象的视角来持久化Java应用中的数据。换句话说,使用Hibernate的开发者应该总是关注对象的状态(state),不必考虑SQL语句的执行。 这部分细节已经由Hibernate掌管妥当,只有开发者在进行系统性能调优的时候才需要进行了解。11.1.Hibernate对象状态(object states)Hibern 阅读全文
posted @ 2011-08-23 22:12 天不行道我来之 阅读(141) 评论(0) 推荐(0) 编辑
摘要: 第10章继承映射(Inheritance Mappings)10.1. 三种策略Hibernate支持三种基本的继承映射策略:每个类分层结构一张表(table per class hierarchy)每个子类一张表(table per subclass)每个具体类一张表(table per concrete class)此外,Hibernate还支持第四种稍有不同的多态映射策略:隐式多态(implicit polymorphism)对于同一个继承层次内的不同分支,可以采用不同的映射策略,然后用隐式多 态来完成跨越整个层次的多态。但是在同一个<class>根元素 下,Hibernat 阅读全文
posted @ 2011-08-23 22:11 天不行道我来之 阅读(168) 评论(0) 推荐(0) 编辑
摘要: 第9章组件(Component)映射Component这个概念在Hibernate中几处不同的地方为了不同的目的被重复使用.9.1.依赖对象(Dependent objects)Component是一个被包含的对象,它作为值类型被持久化,而非一个被引用的实体。“component(组件)”这一术语指的是面向对象的合成概念(而并不是系统构架层次上的组件的概念)举个例子, 你可以对人(Person)如以下这样来建模:public class Person { private java.util.Date birthday; private Name name; private S... 阅读全文
posted @ 2011-08-23 22:10 天不行道我来之 阅读(205) 评论(0) 推荐(0) 编辑
摘要: 第8章关联关系映射8.1.介绍关联关系映射通常情况是最难配置正确的。在这个部分中,我们从单向关系映射开始,然后考虑双向关系映射,由浅至深讲述一遍典型的案例。在所有的例子中,我们都使用 Person和Address。我们根据映射关系是否涉及连接表以及多样性来划分关联类型。在传统的数据建模中,允许为Null值的外键被认为是一种不好的实践,因此我们所有的例子中都使用不允许为Null的外键。这并不是Hibernate的要求,即使你删除掉不允许为Null的约束,Hibernate映射一样可以工作的很好。8.2.单向关联(Unidirectional associations)8.2.1.多对一(many 阅读全文
posted @ 2011-08-23 22:09 天不行道我来之 阅读(118) 评论(0) 推荐(0) 编辑