Hibernate: A J2EE Developer's Guide (Paperback)

Will Iverson

  • 出版商: Addison Wesley
  • 出版日期: 2004-11-21
  • 售價: $1,360
  • 貴賓價: 9.5$1,292
  • 語言: 英文
  • 頁數: 384
  • 裝訂: Paperback
  • ISBN: 0321268199
  • ISBN-13: 9780321268198
  • 相關分類: Java 相關技術
  • 立即出貨(限量) (庫存=1)

買這商品的人也買了...

商品描述

Description:

Build fast, high-performance Java database applications with Hibernate.

Hibernate makes it far easier to build robust, high-performance database applications with Java. Now there's a practical, hands-on guide to using Hibernate's flexible, fast object/relational persistence and query services. Will Iverson covers every facet of development with Hibernate, from its mapping system toits advanced query mechanisms and transaction support.

Iverson shows you how to build Hibernate solutions that can integrate with Swing, with JSP, and even with EJBs utilizing bean-managed persistence. Using realistic examples, he demonstrates how to work with persistent objects, manage schema, and optimize database application performance. After you've mastered Hibernate's core techniques, Iverson presents best practices, tips, tricks, and style guidance for even more effective development. Coverage includes

  • Case study applications: starting from object/relational mapping files, Java code, and existing schema

  • Writing Hibernate queries using HQL—Hibernate's object-oriented SQL extension

  • Using Hibernate with Java-based Criteria and Example or native SQL

  • The Hibernate mapping file format in detail: a complete reference

  • How Hibernate handles class and database relationships

  • Managing session and database transactions with Hibernate

  • Tracking and optimizing performance with p6spy and IronTrack SQL

  • Automatically generating DDL scripts that create, update, and drop tables

Even if your Java database experience is limited to basic JDBC, this book will help you leverage Hibernate's remarkable power. You'll spend far less time writing code to bridge databases with Java applications—so you can get to market faster, with more features.

 

Table of Contents:

1. Overview.

    Why Object/Relational Mapping?

    What Is Hibernate?

    Comparing JDBC to Hibernate.

    Hibernate's Mapping System.

    Other Java/Database Integration Solutions.

      Enterprise JavaBeans (EJB) 2.X.

      Enterprise JavaBeans (EJB) 3.0.

      Java Data Objects (JDO).

      Other Commercial O/R Tools.

    How to Obtain and Install.

    Hibernate Distribution.

    Hibernate Extensions Distribution.

    Configuration.

      Supported Databases.

    Introduction to MySQL.

2. Getting Oriented.

    Application Architecture.

    Mapping Files.

      Mapping Files in Depth.

    Generating Java Source.

      Generated Persistent Classes.

    Application Configuration.

      Generated Database Schema.

    Web Application.

    JSP Interface.

      List Posts.

      Create Author.

      List Authors.

      Edit Author.

      Create Post.

      View Post.

      Edit Post.

      Delete Post.

      Delete Author.

      Next Steps.

3. Starting from Java.

    Java Object Model.

      Java Classes.

      Working with Xdoclet.

    Generated Mapping Files.

    Generated Schema.

    Working with Artifacts and Owners.

4. Starting from an Existing Schema.

    Initial Schema.

    Using Middlegen.

      Obtaining Middlegen.

      Configuring Middlegen.

      Running Middlegen.

    Generated Mapping Files.

    Generated Java.

    Working with the Database.

5. Mapping Files.

    Basic Structure.

    Mapping File Reference.

      any.

      array.

      bag.

      cache.

      class.

      collection-id.

      column.

      component.

      composite-element.

      composite-id.

      composite-index.

      discriminator.

      dynamic-component.

      element.

      generator.

      hibernate-mapping.

      id.

      idbag.

      import   -.

      index.

      index-many-to-any.

      index-many-to-many.

      joined-subclass.

      key.

      key-many-to-one.

      key-property.

      list.

      many-to-any.

      many-to-many.

      many-to-one.

      map.

      meta.

       meta-value.

      nested-composite-element.

      one-to-many.

      one-to-one.

      param.

      parent.

      primitive-array.

      property.

      query.

      return.

      set.

      sql-query.

      subclass.

      synchronize.

      timestamp.

      version.

6. Persistent Objects.

    Sessions.

      Setting up the Configuration.

      Obtaining the Session.

      Creating Objects.

      Finding Objects.

      Refreshing Objects.

      Deleting Objects.

      Updating Objects.

     Objects and Identity.

      What Is Identity?

      Identity within a Session.

      Generating Identity (Primary Keys).

      Built-In Hibernate Generators.

      Composite Identity.

      Unsaved Value.

    Life-Cycle Methods.

7. Relationships.

    Database Relationships.

      Many-to-One.

      One-to-Many.

      Many-to-Many.

      One-to-One.

    Java Collection Relationships.

    Java Class Relationships.

      Subclasses.

      Joined Subclasses.

      Components.

    Any-Based Relationships.

    Bi-directional Relationships.

8. Queries.

    HQL.

      Using Hibern8 IDE.

    HQL Reference.

      Notation Reference.

    Select.

      Selected Properties List.

      Aggregate.

      Collection Properties.

    From.

      Join Types.

    Where.

      Logical Operations.

      Boolean Operations.

      Quantified Expression.

      Parameter Binding.

    Group By.

    Having.

    Order By.

    Criteria Queries.

      Method Chaining.

      Easily Override Lazy Settings.

    Native SQL Queries.

9. Transactions.

    Introduction to Transactions.

      Sessions, Transactions, and Flushing.

    Optimistic and Pessimistic Locking.

      Pessimistic Locks.

      Optimistic Locks.

10. Performance.

    Finding and Solving Problems.

      IronTrack SQL.

    Queries.

      Lazy Objects.

      Collections.

    Inserts.

    Connection Pooling.

    Caching.

      Understanding Caches.

      Configuring a Cache.

      Standard Caches.

      Using a Custom Cache.

11. Schema Management.

    Updating an Existing Schema.

      Schema Updates from within an Application.

      Command Line Schema Updates.

      Ant Task Schema Updates.

    Generating Update and Drop Scripts.

      Command-Line Script Generation.

      Ant Task Script Generation.

      Generating Multiple Scripts.

12. Best Practices, Style Guide, Tips and Tricks.

    Reducing Code with Inversion of Control.

    Reducing Session Creation Impact with ThreadLocal.

    Using Hibernate as an EJB BMP Solution.

    Integrating with Other Technologies.

    Applications That Use Hibernate.

    Strategies for Getting Started.

      Where to Start?

      Start with Many-to-One and One-to-Many.

      Profile Database Fetching.

13. Future Directions.

    Hibernate 3.0.

    EJB 3.0.

    Here and Now.

Index.

商品描述(中文翻譯)

描述:
使用Hibernate快速建立高性能的Java資料庫應用程式。

Hibernate使得使用Java建立強大且高效能的資料庫應用程式變得更加容易。現在有一本實用的、實戰指南,介紹如何使用Hibernate的靈活、快速的物件/關聯持久化和查詢服務。作者Will Iverson涵蓋了Hibernate開發的各個方面,從映射系統到高級查詢機制和事務支援。

Iverson向讀者展示如何建立能夠與Swing、JSP甚至使用bean-managed持久化的EJB整合的Hibernate解決方案。通過實際例子,他演示了如何處理持久化物件、管理架構和優化資料庫應用程式的性能。在掌握了Hibernate的核心技術之後,Iverson提供了最佳實踐、技巧、訣竅和開發風格指南,以實現更有效的開發。內容包括:

- 案例研究應用程式:從物件/關聯映射檔、Java程式碼和現有架構開始
- 使用Hibernate Query Language (HQL) 撰寫Hibernate查詢
- 使用基於Java的Criteria和Example或本地SQL的Hibernate
- 詳細介紹Hibernate映射檔格式:完整參考資料
- Hibernate如何處理類別和資料庫關係
- 使用Hibernate管理會話和資料庫事務
- 使用p6spy和IronTrack SQL追蹤和優化性能
- 自動生成建立、更新和刪除表格的DDL腳本

即使您的Java資料庫經驗有限,本書也能幫助您充分利用Hibernate的強大功能。您將花費更少的時間編寫用於將資料庫與Java應用程式橋接的程式碼,從而更快地推出市場,並具備更多功能。

目錄:
1. 概述
- 為什麼需要物件/關聯映射?
- 什麼是Hibernate?
- JDBC與Hibernate的比較
- Hibernate的映射系統
- 其他Java/資料庫整合解決方案
- 企業級JavaBeans (EJB) 2.X