We are into Staffing solutions from past 10 years with our clients (fortune 500) from USA, UK and Australia. We successfully placed thousands of students with best firms.
1. HIBERNATE
“Hibernate” is an object-relational mapping (ORM) library for the Java language, providing
a framework for mapping an object oriented domain model to a traditional relational
database.
Hibernate solves object-relational impedance mismatch problems by replacing direct
persistence-related database accesses with high-level object handling functions.
Hibernate is free software that is distributed under the GNU Lesser General Public License.
What is ORM?
ORM stands for Object-Relational Mapping (ORM) is a programming technique for
converting data between relational databases and object oriented programming languages
such as Java, C# etc.
Java ORM Framework: There are several persistent frameworks and ORM options
in Java. A persistent framework is an ORM service that stores and retrieves objects into a
relational database.
Enterprise JavaBeans Entity Beans
Java Data Objects
Castor
TopLink
Spring DAO etc..,
Hibernate Installation/Setup on Eclipse IDE
You should download the latest production release of Hibernate from the Hibernate website
at http://www.hibernate.org/ and unpack the archive after download.
Create a new Java Project and enter Hibernate Application as project name.
Create lib and src subdirectories in this project.
Copy JAR files which are listed below, from hibernate distribution that you have
downloaded to the lib directory of the “Hibernate Application” project.
Under root directory of the hibernate distribution: hibernate3.jar
Under lib/required directory of the hibernate distribution:
antlr-2.7.6.jar
commons-collections-3.1.jar
dom4j-1.6.1.jar
www.p2cinfotech.com
+1-732-546-3607
2. HIBERNATE
javassist-3.12.0.GA.jar
jta-1.1.jar
slf4j-api-1.6.1.jar
Under lib/jpa directory of the hibernate distribution: hibernate-jpa-2.0-api-1.0.1.Final.jar
Download slf4j-1.6.1.zip file from http://www.slf4j.org/download.html, unpack the archive
and copy the slf4j-simple-1.6.1.jar file to lib directory of the “Hibernate Application” project.
slf4j-simple-1.6.1.jar
Connecting To Database
you will need the database driver JAR that Hibernate uses to connect to your database.
I use Oracle Express Edition (Oracle XE) and it’s database driver jar is here on Windows:
C:oraclexeapporacleproduct10.2.0serverjdbclibojdbc14.jar
Copy this ojdbc14.jar to the lib directory of the “Hibernate Application” project.
create a User library on Eclipse IDE. Then, I will add all JAR files in the Hibernate
Applicationlib directory to this User library and add this User library to the project build
path.
Click Window–>Preferences on the top menu bar of Eclipse.
Click Java–>Build Path–>User Libraries and click New button then enter “Hibernate”
as the User library name.
Select “Hibernate” User library that we just created and click Add JARS button.
Select all JAR files in the lib folder of the “Hibernate Application” project and click Open
button to add all JAR files to “Hibernate” User library.
Now “Hibernate” User library is ready and we can add this User library to “Hibernate
Application” project build path.
Right click to “Hibernate Application” project and click Build Path–>Add Libraries
Then, select “User Library” and click Next button.
Finally, select “Hibernate” User library and click Finish button.
You have successfully installed Hibernate on Eclipse IDE.
Hibernate caching:
Caching is all about application performance optimization and it sits between your
application and the database to avoid the number of database hits as many as possible to
give a better performance for performance critical applications.
Caching is important to Hibernate as well which utilizes a multilevel caching schemes.
www.p2cinfotech.com
+1-732-546-3607
3. HIBERNATE
First-level cache: The first-level cache is the Session cache and is a mandatory cache through
which all requests must pass. The Session object keeps an object under its own power before
committing it to the database.
If you issue multiple updates to an object, Hibernate tries to delay doing the update as long as
possible to reduce the number of update SQL statements issued. If you close the session, all the
objects being cached are lost and either persisted or updated in the database.
Second-level cache: Second level cache is an optional cache and first-level cache will always be
consulted before any attempt is made to locate an object in the second-level cache. The secondlevel cache can be configured on a per-class and per-collection basis and mainly responsible for
caching objects across sessions.
Any third-party cache can be used with Hibernate. An org.hibernate.cache.CacheProvider
interface is provided, which must be implemented to provide Hibernate with a handle to the
cache implementation.
Query-level cache: Hibernate also implements a cache for query resultsets that integrates
closely with the second-level cache.
This is an optional feature and requires two additional physical cache regions that hold the
cached query results and the timestamps when a table was last updated. This is only useful for
queries that are run frequently with the same parameters.
The Second Level Cache: Hibernate uses first-level cache by default and you have nothing to
do to use first-level cache. Let's go straight to the optional second-level cache. Not all classes
benefit from caching, so it's important to be able to disable the second-level cache.
The Hibernate second-level cache is set up in two steps. First, you have to decide which
concurrency strategy to use. After that, you configure cache expiration and physical cache
attributes using the cache provider.
Concurrency strategies: A concurrency strategy is a mediator which responsible for storing
items of data in the cache and retrieving them from the cache. If you are going to enable a
second-level cache, you will have to decide, for each persistent class and collection, which cache
concurrency strategy to use.
Transactional: Use this strategy for read-mostly data where it is critical to
prevent stale data in concurrent transactions,in the rare case of an update.
www.p2cinfotech.com
+1-732-546-3607
4. HIBERNATE
Read-write: Again use this strategy for read-mostly data where it is critical to
prevent stale data in concurrent transactions,in the rare case of an update.
Nonstrict-read-write: This strategy makes no guarantee of consistency
between the cache and the database. Use this strategy if data hardly ever
changes and a small likelihood of stale data is not of critical concern.
Read-only: A concurrency strategy suitable for data which never changes. Use it
for reference data only.
If we are going to use second-level caching for our Employee class, let us add the mapping element
required to tell Hibernate to cache Employee instances using read-write strategy.
www.p2cinfotech.com
+1-732-546-3607