Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Connecting PostgreSQL 9.2.1 with Hibernate

I have a blank Spring MVC project, and I've installed Hibernate and the PostgreSQL drivers using Maven.

I'm running short on complete tutorials that show how to connect PostgreSQL with Hibernate.

Any help here?

like image 753
Hrishikesh Choudhari Avatar asked May 15 '13 18:05

Hrishikesh Choudhari


People also ask

Does hibernate support PostgreSQL?

Out of the box, Hibernate works pretty well with PostgreSQL databases.

What is a Hibernate Dialect?

A hibernate dialect gives information to the framework of how to convert hibernate queries(HQL) into native SQL queries. Since Hibernate is database agnostic. It can work with different databases. However, databases have proprietary extensions/native SQL variations, and set/sub-set of SQL standard implementations.


2 Answers

This is the hibernate.cfg.xml file to connect postgresql 9.5 and this is help to you basic configuration.

 <?xml version='1.0' encoding='utf-8'?>  <!--   ~ Hibernate, Relational Persistence for Idiomatic Java   ~   ~ License: GNU Lesser General Public License (LGPL), version 2.1 or later.   ~ See the lgpl.txt file in the root directory or <http://www.gnu.org/licenses/lgpl-2.1.html>.   --> <!DOCTYPE hibernate-configuration SYSTEM         "http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd"> <hibernate-configuration >     <session-factory>         <!-- Database connection settings -->         <property name="connection.driver_class">org.postgresql.Driver</property>         <property name="connection.url">jdbc:postgresql://localhost:5433/hibernatedb</property>         <property name="connection.username">postgres</property>         <property name="connection.password">password</property>          <!-- JDBC connection pool (use the built-in) -->         <property name="connection.pool_size">1</property>          <!-- SQL dialect -->         <property name="hibernate.dialect">org.hibernate.dialect.PostgreSQLDialect</property>          <!-- Enable Hibernate's automatic session context management -->         <property name="current_session_context_class">thread</property>          <!-- Disable the second-level cache  -->         <property name="cache.provider_class">org.hibernate.cache.internal.NoCacheProvider</property>          <!-- Echo all executed SQL to stdout -->         <property name="show_sql">true</property>          <!-- Drop and re-create the database schema on startup -->         <property name="hbm2ddl.auto">create</property>         <mapping class="com.waseem.UserDetails"/>     </session-factory> </hibernate-configuration> 

Make sure File Location should be under src/main/resources/hibernate.cfg.xml

like image 41
waseem khan Avatar answered Oct 21 '22 11:10

waseem khan


This is a hibernate.cfg.xml for posgresql and it will help you with basic hibernate configurations for posgresql.

<!DOCTYPE hibernate-configuration PUBLIC         "-//Hibernate/Hibernate Configuration DTD 3.0//EN"         "http://www.hibernate.org/dtd/hibernate-configuration-3.0.dtd">  <hibernate-configuration>     <session-factory>         <property name="hibernate.dialect">org.hibernate.dialect.PostgreSQLDialect</property>         <property name="hibernate.connection.driver_class">org.postgresql.Driver</property>         <property name="hibernate.connection.username">postgres</property>         <property name="hibernate.connection.password">password</property>         <property name="hibernate.connection.url">jdbc:postgresql://localhost:5432/hibernatedb</property>            <property name="connection_pool_size">1</property>          <property name="hbm2ddl.auto">create</property>          <property name="show_sql">true</property>           <mapping class="org.javabrains.sanjaya.dto.UserDetails"/>      </session-factory> </hibernate-configuration> 
like image 108
Sanjaya Liyanage Avatar answered Oct 21 '22 10:10

Sanjaya Liyanage