Book Image

Java Hibernate Cookbook

Book Image

Java Hibernate Cookbook

Overview of this book

This book will provide a useful hands-on guide to Hibernate to accomplish the development of a real-time Hibernate application. We will start with the basics of Hibernate, which include setting up Hibernate – the pre-requisites and multiple ways of configuring Hibernate using Java. We will then dive deep into the fundamentals of Hibernate such as SessionFactory, session, criteria, working with objects and criteria. This will help a developer have a better understanding of how Hibernate works and what needs to be done to run a Hibernate application. Moving on, we will learn how to work with annotations, associations and collections. In the final chapters, we will see explore querying, advanced Hibernate concepts and integration with other frameworks.
Table of Contents (15 chapters)
Java Hibernate Cookbook
Credits
About the Authors
About the Reviewers
www.PacktPub.com
Preface
Index

Maintaining the history of an object


In the previous recipe, we used the versioning feature of hibernate to check how many times a particular record has been modified. This is a good feature; however, it gives us just a number. Versioning does not store the modified data anywhere. So, it's hard to find out the previous state of the object before the modification.

As a solution to this, hibernate provides another project called Envers.

Envers helps us maintain the history of the database and it keeps track of the modifications in the database table rows. For this to work, we have to change the configuration in the POJO and configuration (.cfg.xml) files.

To configure Envers with hibernate, we need JAR files in our project. You can use the following Maven dependency for the Maven-based project:

<dependency>
  <groupId>org.hibernate</groupId>
  <artifactId>hibernate-envers</artifactId>
  <version>4.3.10.Final</version>
</dependency>

Once we configure...