Building a Solid Foundation for JPA and Hibernate

Befuddled by your Java persistence code? Trying to get on top of JPA and Hibernate? These topics can be mastered easily, as veteran developer Stephen B. Morris illustrates here with fully worked examples and key techniques.

From the author of

Converging Software

Looking at the latest trends in enterprise software development, I see a number of emerging patterns. Many organizations are aggressively pursuing a policy of employing lower-cost labor. Simultaneously, enterprise development is becoming ever more complex. These two forces are in direct opposition.

Not only is development complexity increasing, but another element is at work—what might be called convergent software. In a sense, the layers of development technology are merging. For an example of this trend, you need look no further than technologies such as JPA, Hibernate, and EJB3. Each of these technologies represents a confluence of what were previously separate disciplines:

In my opinion, these trends are welcome because they help to flatten the hierarchy of developers. If Developer X has previously focused on an area such as web services development, for example, it's feasible for Developer X to master persistence development.

Such skill diversification is no longer a choice—as developers, we all must strive to move up the value chain. The good news is that these emerging technologies are finally beginning to provide a platform for autonomous learning. To see how this is true for JPA and Hibernate, let's look at how to build a program with this interesting technology.