前言@b@1. 在Tomcat中快速上手@b@1.1. 开始Hibernate之旅@b@1.2. 第一个可持久化类@b@1.3. 映射cat@b@1.4. 与猫同乐@b@1.5. 结语@b@2. 体系结构@b@2.1. 总览@b@2.2. 持久化对象标识(Persistent Object @b@Identity )@b@2.3. JMX集成@b@2.4. JCA支持@b@3. SessionFactory配置@b@3.1. 可编程配置方式@b@3.2. 获取SessionFactory@b@3.3. 用户自行提供JDBC连接@b@3.4. Hibernate提供的JDBC连接@b@3.5. 其它配置属性@b@3.5.1. SQL @b@Dialects SQL 方言@b@3.5.2. 外连接抓取(Outer Join @b@Fetching )@b@3.5.3. 二进制流@b@3.5.4. 在控制台记录SQL@b@3.5.5. 自定义 @b@ConnectionProvider@b@3.5.6. 常用数据库属性@b@3.5.7. 自定义CacheProvider@b@3.5.8. 事务策略@b@3.5.9. 绑定SessionFactory到JNDI@b@3.5.10. 查询语言替换 @b@3.6. XML配置文件@b@3.7. Logging@b@3.8. NamingStrategy(命名策略)@b@4. 持久化类(Persistent Classes)@b@4.1. 简单示例@b@4.1.1. 为持久化字段声明访问器(accessors)和是否可变的标志(mutators)@b@4.1.2. 实现一个默认的构造方法(constructor)@b@4.1.3. 提供一个标识属性(identifier @b@property)(可选) @b@4.1.4. 建议使用不是final的类 @b@(可选)@b@4.2. 继承(Inheritance @b@)@b@4.3. 持久化生命周期(Lifecycle)中的回调(Callbacks)@b@4.4. 合法性检查(Validatable)@b@4.5. XDoclet示例@b@5. O/R Mapping基础@b@5.1. 映射声明(Mapping declaration)@b@5.1.1. Doctype@b@5.1.2. hibernate-mapping@b@5.1.3. class@b@5.1.4. id@b@5.1.4.1. generator@b@5.1.4.2. 高/低位算法(Hi/Lo @b@Algorithm)@b@5.1.4.3. UUID算法(UUID @b@Algorithm )@b@5.1.4.4. 标识字段和序列(Identity Columns and @b@Sequences)@b@5.1.4.5. 程序分配的标识符(Assigned @b@Identifiers)@b@5.1.5. composite-id 联合ID@b@5.1.6. 识别器(discriminator)@b@5.1.7. 版本(version)(可选)@b@5.1.8. 时间戳(timestamp )(可选)@b@5.1.9. property@b@5.1.10. 多对一(many-to-one)@b@5.1.11. 一对一@b@5.1.12. 组件(component), @b@动态组件(dynamic-component)@b@5.1.13. 子类(subclass)@b@5.1.14. 连接的子类(joined-subclass)@b@5.1.15. map, set, list, bag@b@5.1.16. 引用(import)@b@5.2. Hibernate 的类型@b@5.2.1. 实体(Entities)和值(values)@b@5.2.2. 基本值类型@b@5.2.3. 持久化枚举(Persistent @b@enum)类型@b@5.2.4. 自定义值类型@b@5.2.5. 映射到"任意"(any)类型@b@5.3. SQL中引号包围的标识符@b@5.4. 自定义DDL@b@5.5. 映射文件的模块化(Modular mapping @b@files)@b@6. 集合类(Collections)@b@6.1. 持久化集合类(Persistent @b@Collections)@b@6.2. 映射集合(Mapping a @b@Collection)@b@6.3. 值集合和多对多关联(Collections of @b@Values and Many To Many Associations)@b@6.4. 一对多关联(One To Many @b@Associations)@b@6.5. 延迟初始化(延迟加载)(Lazy @b@Initialization)@b@6.6. 集合排序(Sorted @b@Collections)@b@6.7. 对collection排序的其他方法(Other @b@Ways To Sort a Collection)@b@6.8. 垃圾收集(Garbage @b@Collection)@b@6.9. 双向关联(Bidirectional @b@Associations)@b@6.10. 三重关联(Ternary @b@Associations)@b@6.11. 异类关联(Heterogeneous @b@Associations)@b@6.12. 集合例子(Collection @b@Example)@b@6.13. <idbag>@b@7. 组件(Components)@b@7.1. 作为依赖的对象(As Dependent @b@Objects)@b@7.2. In Collections@b@7.3. 作为一个Map的索引(As a Map Index @b@)@b@7.4. 作为联合标识符(As Composite @b@Identifiers)@b@7.5. 动态组件 (Dynamic @b@components)@b@8. 操作持久化数据(Manipulating Persistent @b@Data)@b@8.1. 创建一个持久化对象@b@8.2. 装载对象@b@8.3. Querying@b@8.3.1. 标量查询(Scalar @b@query)@b@8.3.2. 查询接口(Query @b@interface)@b@8.3.3. 可滚动迭代(Scrollable @b@iteration)@b@8.3.4. 过滤集合类(Filtering @b@collections)@b@8.3.5. 条件查询@b@8.3.6. 使用本地SQL的查询@b@8.4. 更改在当前session中保存或者装载的对象@b@8.5. 更改在以前session中保存或者装载的对象@b@8.6. 把在先前的session中保存或装载的对象重新与新session建立关联(reassociate)@b@8.7. 删除持久化对象@b@8.8. 对象图(Graphs of @b@objects)@b@8.8.1. 自动管理生命周期的对象(lifecycle @b@object)@b@8.8.2. 通过可触及性决定持久化(Persistence by @b@Reachability)@b@8.9. 清洗(Flushing) -- @b@这个词很难翻译,不能使用“刷新”,因为刷新一词已经被"refresh"使用了。有什么好的建议?@b@8.10. 结束一个Session@b@8.10.1. 清洗(Flush)session@b@8.10.2. 提交事务@b@8.10.3. 关闭session@b@8.10.4. 处理异常@b@8.11. 拦截器(Interceptors)@b@8.12. 元数据(Metadata) @b@API@b@9. 父子关系(Parent Child Relationships)@b@9.1. 关于collections@b@9.2. 双向的一对多关系(Bidirectional @b@one to many)@b@9.3. 级联(Cascades)@b@9.4. 级联更新(Using cascading @b@update())@b@9.5. 结论@b@10. Hibernate查询语言(Query Language), 即HQL@b@10.1. 大小写敏感性(Case @b@Sensitivity)@b@10.2. from 子句@b@10.3. 联合(Associations)和连接(joins)@b@10.4. select子句@b@10.5. 统计函数(Aggregate @b@functions)@b@10.6. 多态(polymorphism)@b@10.7. where子句@b@10.8. 表达式(Expressions)@b@10.9. order by 子句@b@10.10. group by 子句@b@10.11. 子查询@b@10.12. 示例@b@10.13. 提示和技巧(Tips & @b@Tricks)@b@11. 实例(A Worked Example)@b@11.1. 持久化类@b@11.2. Hibernate 映射@b@11.3. Hibernate @b@代码@b@12. 性能提升(Improving Performance)@b@12.1. 用于延迟装载的代理@b@12.2. 第二层缓存(The Second Level @b@Cache)s@b@12.2.1. 映射(Mapping)@b@12.2.2. 只读缓存@b@12.2.3. 读/写缓存@b@12.2.4. 不严格的读/写缓存@b@12.2.5. 事务缓存(transactional)@b@12.3. 管理Session缓存@b@12.4. 查询缓存(Query @b@Cache)@b@13. 理解集合类的性能(Understanding Collection @b@Performance)@b@13.1. 分类(Taxonomy)@b@13.2. Lists, @b@maps 和sets用于更新效率最高@b@13.3. Bag和list是反向集合类中效率最高的@b@13.4. 一次性删除(One @b@shot delete)@b@14. 条件查询(Criteria Query)@b@14.1. 创建一个Criteria实例@b@14.2. 缩小结果集范围@b@14.3. 对结果排序@b@14.4. 关联(Associations)@b@14.5. 动态关联对象获取(Dynamic @b@association fetching)@b@14.6. 根据示例查询(Example @b@queries)@b@15. SQL查询@b@15.1. 创建一个基于SQL的Query@b@15.2. 别名和属性引用@b@15.3. 为SQL查询命名@b@16. 继承映射(Inheritance Mappings)@b@16.1. 三种策略@b@16.2. 限制@b@17. 事务和并行(Transactions And Concurrency)@b@17.1. 配置,会话和工厂(Configurations, @b@Sessions and Factories)@b@17.2. 线程和连接(Threads and @b@connections)@b@17.3. 乐观锁定/版本化(Optimistic @b@Locking / Versioning)@b@17.3.1. 使用长生命周期带有自动版本化的会话@b@17.3.2. 使用带有自动版本化的多个会话@b@17.3.3. 应用程序自己进行版本检查@b@17.4. 会话断开连接(Session @b@disconnection)@b@17.5. 悲观锁定(Pessimistic @b@Locking)@b@18. 映射实例(Mapping Examples)@b@18.1. 雇员/雇主(Employer/Employee)@b@18.2. 作者/著作(Author/Work)@b@18.3. 客户/订单/产品(Customer/Order/Product)@b@19. 工具箱指南@b@19.1. Schema 生成器(Schema @b@Generation)@b@19.1.1. 对schema定制化(Customizing @b@the schema)@b@19.1.2. 运行该工具@b@19.1.3. 属性(Properties)@b@19.1.4. 使用Ant(Using Ant)@b@19.1.5. 对schema的增量更新(Incremental schema @b@updates)@b@19.1.6. 用Ant来增量更新schema(Using @b@Ant for incremental schema updates)@b@19.2. 代码生成(Code Generation)@b@19.2.1. 配置文件(可选)@b@19.2.2. meta属性@b@19.2.3. 基本的finder生成器(Basic @b@finder generator)@b@19.2.4. 基于Velocity的渲染器/生成器(Velocity based @b@renderer/generator)@b@19.3. 映射文件生成器(Mapping File @b@Generation)@b@19.3.1. 运行此工具@b@20. 最佳实践(Best Practices)