KEMBAR78
Hibernate Basic Concepts - Presentation | PPTX
Hibernate presentation
The more you know, the more you realize how much you don't know.
The less you know, the more you think you know.
~David T. Freeman
author: Khoa.NK
- The Java Persistence API provides a POJO persistence
model for object-relational mapping.
Java Persistence API
1. Takes care of mapping Java classes to database tables
(none-code).
2. Provides simple APIs for storing and retrieving Java
objects.
3. SQL types be familiar Java Objects
4. Minimize database access with smart fetching
strategies.
5. Save 90% cost (databases)
Hibernate Advantages:
Hibernate Architecture
<hibernate-configuration>
<session-factory>
<property name="hibernate.connection.driver_class">com.mysql.jdbc.Driver</property>
<property name="hibernate.connection.url">jdbc:mysql://localhost:3306/hibernate</property>
<property name="hibernate.connection.username">root</property>
<property name="hibernate.connection.password"></property>
<property name="hibernate.dialect">org.hibernate.dialect.MySQLDialect</property>
<property name="hibernate.default_schema">hibernate</property>
<property name="show_sql">true</property>
<property name="hibernate.hbm2ddl.auto">update</property>
<property name="packagesToScan">com.nkk.hibernate.present.entities</property>
<mapping resource="entities/Book.hbm.xml"></mapping>
<mapping resource="entities/Category.hbm.xml"></mapping>
</session-factory>
</hibernate-configuration>
Hibernate Configuration
<hibernate-mapping>
<class name="com.nkk.hibernate.present.entities.CategoryEntity" table="category">
<id name="id" type="int">
<column name="id" precision="10" scale="0" />
<generator class="increment" />
</id>
<property name="name" type="string">
<column name="name" length="200" not-null="true" />
</property>
</class>
</hibernate-mapping>
Hibernate Mapping
<set name="books" inverse="true">
<key>
<column name="category_id" not-null="true" length="10"></column>
</key>
<one-to-many class="com.nkk.hibernate.present.entities.BookEntity"></one-to-many>
</set>
<many-to-one name="category" class="com.nkk.hibernate.present.entities.CategoryEntity" fetch="select">
<column name="category_id" not-null="true"></column>
</many-to-one>
Hibernate O2M & M2O
- Cache level 1
- Cache level 2
- Query cache
Hibernate Caching
Hibernate lazy loading
- Hibernate Query language
- Hibernate Criteria query
- isDirty()
- Hibernate Spring session
- Hibernate optimization
Orthers

Hibernate Basic Concepts - Presentation