Java Persistence with Hibernate (Anglais) Broché – 7 décembre 2006
|Neuf à partir de||Occasion à partir de|
Les clients ayant acheté cet article ont également acheté
Descriptions du produit
Biographie de l'auteur
is a member of the Hibernate developer team. He works as a
trainer, consultant, and product manager for Hibernate, EJB 3.0, and JBoss Team
at JBoss, a division of Red Hat. He is the co-author with Gavin King of Mannings
best-selling Hibernate in Action.
Gavin King is the founder of the Hibernate project, and a member of the EJB 3.0
(JSR 220) expert group. He also leads the Web Beans JSR 299, a standardization
effort involving Hibernate concepts, JSF, and EJB 3.0. Gavin King works as a lead
developer at JBoss, a division of Red Hat.
Aucun appareil Kindle n'est requis. Téléchargez l'une des applis Kindle gratuites et commencez à lire les livres Kindle sur votre smartphone, tablette ou ordinateur.
Pour obtenir l'appli gratuite, saisissez votre adresse e-mail ou numéro de téléphone mobile.
Détails sur le produit
En savoir plus sur les auteursDécouvrez des livres, informez-vous sur les écrivains, lisez des blogs d'auteurs et bien plus encore.
Dans ce livre(En savoir plus)
Quels sont les autres articles que les clients achètent après avoir regardé cet article?
Commentaires en ligne
Meilleurs commentaires des clients
Ce livre permet de répondre à toutes les questions que l'on s'est toujours posé sur ce framework.
Après une première partie qui explique les raisons d'être d'un ORM (peut-être un petit peu longue),
la seconde partie détaille les mappings que l'on peut réaliser.
La 3e partie explique le fonctionnement dynamique d'Hibernate et de son API.
A chaque fois est expliqué l'utilisation d'Hibernate en direct ou via JPA.
Livre pédagogique et clair. Intelligement construit, progressif, qui peut se lire chronologiquement, du début à la fin, ou servir de référence. L'auteur nous donne sa vision de développeur du projet Hibernate.
Une référence vu l'étendu du sujet traité. Il permet d'avoir une vue d'ensemble sur ce qu'il est possible ou non de faire, et de bien en comprendre le fonctionnement.
S'adresse à un public intermediaire/expert.
Although it's mainly about Hibernate 3.2 (and the actual version of hibernate beeing 4.1), the book is still the most complete reference on hibernate so far.
It will help you understand the foundamental knowledge you need to harness the technology.
The examples are clear and working; there are a very little amount of typos but they are easy to figure out. Moreover you will find an errata on hibernate web site.
Who is this book for ?
This book is for newbies as well as for experience developers who will find it to be a good reference manuel on Hibernate.
It is not an How-To book.
You will need to forget about your current project requirement for a litlle while ( one week for me) and enter deeply in the book, trying the examples.
After a week on this book, and a second week trying to apply it to my project, I really experienced an "I Know Kunfu" moment !
I really recommend this book !
Commentaires client les plus utiles sur Amazon.com (beta)
It's when I actually tried to use this fat tome to learn how to work with Hibernate that I encountered the first problem. I can't recommend that approach. This book is a terrible way to learn how to use Hibernate. It talks endlessly about all kinds of detail about everything you might want to do, and even provides many incomplete code snippets. But surprisingly it doesn't sit you down and walk you through a simple application actually using Hibernate. The authors do provide a full-blown application you can download and work through - but that won't be easy, dear reader, and it will take you a while to distill the basics from the advanced usage.
This seems to be a problem with most Hibernate books, for some reason - they all think they need to explain ORM to the world rather than simply show how to create an application. Explaining ORM AND showing how to build an application might be better.
So, OK, perhaps, I thought, this will become my master reference. Then I encountered the second problem. There's no good way to drill quickly to a nugget of information you need, which, after all, is the essence of a reference. Instead you will have to read through the theoretical explanations and design discussions to figure out if the trail leads you to the specific nugget you need to get your software working.
In the end I realized that the book is not good as a tutorial and not good as a reference and I was left to wonder what it might be good for. This surprised me, to be honest.
As far as I am aware, no practical Hibernate book has been written, so it would be unfair to single out this one. (The Manning book, Hibernate Quickly, is simply incorrect at too many points - you have to figure out the coding and config errors.) So I'm not singling out this one. However, in my view the praise for this book is directed at the terrific work done by the authors in creating and maintaining Hibernate rather than their work on this book. Their work in this book is unfocused and, while comprehensive and correct, ultimately difficult to use for any practical purpose.
If you want to learn how to use Hibernate, the best way I know is to work with some of the tutorials available on the Web or to download an app server and follow their documentation. You might not learn about "theta-style joins", but you will certainly learn to use Hibernate to create software much more quickly that way than by using this book.
This book aims to be a definitive source of reference for both hibernate and its JPA implementation. The authors undertake an arduous task of explaining each and every detail both in hibernate and JPA parlance. The end result is a comprehensive tutorial/reference guide of both worlds in one well-written and easy-to-read book. Think about this, if your goal is to to learn only hibernate, you have it here, or if all you need is to learn the JPA specification, you got that here too. The most beneficial of all, if you wanted to learn both, compare and contrast them, and make an informed decision of the best approach for your next project, then you are still in the right place. Can this get any better? Keep reading.
With a whopping 850+ pages, this book has loads of information for a reader at any experience level. The entire subject area is broadly organized into 3 parts.
Part 1: Getting started with Hibernate and JPA
Part 2: Mapping concepts and strategies
Part 3: Conversational object processing
Part 1 introduces you to the object/relational paradigm mismatch - both structural and conceptual aspects. Then, we are taken through a tour of how to start a new hibernate project. The authors then lay-out the types of projects that will benefit from ORM and those that wont. Based on the conclusion that the projects with rich domain model will best benefit from ORM, we are then briefly introduced to the art of creating rich domain models using an example application (Caveat Emptor). This example application will be used throughout the rest of the book to explain various concepts and strategies.
Part 2 is largely about the most important concept of hibernate - mapping classes to tables. Starting with the simplest scenario, the authors discuss every possible use-case that may present itself in a data-driven application and provide a mapping solution for the same. One-to-One, One-to-Many, Many-to-One, Many-to-Many, Inheritance mapping, component mapping, mapping collections of components and many more are discussed in detail, along with recommendations on which one to use when. The authors also discuss the pitfalls when taking a bottom-up approach and its solutions. Every chapter explains the mapping meta-data in all 3 formats - hibernate XML, JPA XML and JPA annotations. Since JPA has some limitations, every possible limitation is pointed out and ways to get back to native hibernate to achieve the same effect is discussed.
Part 3 is a complete tutorial on the API for storing and retrieving objects. The authors start with the basics of how to persist, retrieve, query etc., and proceed by dedicating entire chapters for every advanced concept. Transactions & Concurrency, Implementing Conversations, Modifying objects efficiently, Retrieving objects using query and criteria api all receive their own chapters. Every chapter explains the API in both native hibernate as well as JPA parlance. Whenever a JPA limitation is encountered, the authors show the best fall-back strategy to native hibernate.
Towards the end, the authors briefly show us the art and science of writing layered applications with hibernate. As an added bonus, we also get a primer into JBoss Seam, which solves many problems related to writing layered applications using the now famous EJB 3.0 specification. Two appendices, one explaining the fundamentals of SQL and the other acting as a reference for mapping concepts are also very useful.
The authors are very ambitious in trying to cover all the features of both Hibernate 3.x and JPA specification. This is an arduous task and kudos for just aiming for that level of comprehensiveness. Praises aside, i am not very impressed with the ad-hoc approach taken to explain both these giants side-by-side. Some chapters clearly separate hibernate and JPA sections, whereas some chapters entangle them into a mess. I personally preferred the chapters that clearly separated these sections. That gives me the choice, as a reader, to select one or the other, and to focus on my choice. But for some reason, most chapters chose to discuss them in an entangled fashion leaving me more confused than i was before the start.
I was expecting at least a primer on Hibernate/Lucene integration, but the authors chose to safely eliminate the topic, probably because the feature is still in its infancy. Also, it was strange that there was no trace of spring framework anywhere in the book, knowing for a fact that spring has a lot to offer to any ORM implementation.
Though there is room for improvement, there is currently no match for this book in terms of the coverage offered. Explanations are lucid, examples are excellent, and the author's ability to foresee the next questions in the reader's mind and address them immediately is fabulous .
I highly recommend this book
- For those who are interested in learning hibernate 3.x and JPA specification
- For those who crave practical advices for real-world scenarios
- For those who wish to choose between native hibernate and JPA, based on facts, not just techno-babble
In case you are wondering what i chose, i chose native hibernate.
My only gripe is that while this book makes a great reference or a great aid to the experienced developer to bring his hibernate skills to the best level, it fails miserably when used to learn Hibernate from scratch. It's a pity because with a little more effort this could have been the perfect Hibernate book. In particular, 90 % of the example code is from the 'Caveat Emptor' hibernate reference application. Perfectly nice to the veteran developer, but a beginner needs to see the code in action immediately, and building and analyzing 'Caveat Emptor' or translate the original code into his own 'experiments' will probably be way out of his reach. Finally, the writing style is lofty, self-conceited and abysmally boring, and fails to point out what is important from the (almost always) irrelevant details. This being said, Hibernate Foundations are all in this book, which makes a real treasure trove for a senior developer who has already fought a few battles with Hibernate. A good Hibernate intro book has still to be written, so my only advice to the newbie is try some online tutorials, maybe browse the hibernate official website, find something more 'human-friendly' and 'New-Testament-like' , get to play with Hibernate a little, to the point where you can write a very simple, even rudimentary application, and then you will be ready to start wrestling with this bible.
For example, I want to reverse-engineer a database from an existing schema. Hibernate supposedly has a tool to do this, and there's a section in the book that covers it, but much what what they say doesn't actually work. (Some parts worked so poorly that I'm not sure if the reverse-engineering tool is finished yet.)
This all becomes even less tolerable by the verbosity of the prose. They will often take two paragraphs to tell us what could be stated in a single sentence. And they sometimes take a few tedious paragraphs to introduce a complicated subjects, only to tell is they won't be teaching it to us for a few more chapters.
The authors are certainly well-versed in their subject, so this book may well be a useful reference for more experienced users, but if you want to learn Hibernate quickly, you should probably look elsewhere.