Właściwości specyficzne dla bazy danych są:
hibernate.connection.driver_class
:klasa sterownika JDBChibernate.connection.url
:URL JDBChibernate.connection.username
:użytkownik bazy danychhibernate.connection.password
:hasło do bazy danychhibernate.dialect
:Nazwa klasy Hibernateorg.hibernate.dialect.Dialect
co pozwala Hibernate na generowanie kodu SQL zoptymalizowanego pod kątem konkretnej relacyjnej bazy danych.
Aby zmienić bazę danych, musisz:
- Podaj odpowiedni sterownik JDBC dla bazy danych w ścieżce klasy,
- Zmień właściwości JDBC (sterownik, adres URL, użytkownik, hasło )
- Zmień
Dialect
używane przez Hibernate do komunikacji z bazą danych
Istnieją dwa sterowniki do połączenia z SQL Server; open source jTDS i Microsoft. Klasa sterownika i adres URL JDBC zależą od tego, którego używasz.
Ze sterownikiem jTDS
Nazwa klasy sterownika to net.sourceforge.jtds.jdbc.Driver
.
Format adresu URL serwera sql to:
jdbc:jtds:sqlserver://<server>[:<port>][/<database>][;<property>=<value>[;...]]
Tak wyglądałaby konfiguracja Hibernacji (pamiętaj, że możesz pominąć hibernate.
prefiks we właściwościach):
<hibernate-configuration>
<session-factory>
<property name="connection.driver_class">net.sourceforge.jtds.jdbc.Driver</property>
<property name="connection.url">jdbc:jtds:sqlserver://<server>[:<port>][/<database>]</property>
<property name="connection.username">sa</property>
<property name="connection.password">lal</property>
<property name="dialect">org.hibernate.dialect.SQLServerDialect</property>
...
</session-factory>
</hibernate-configuration>
Z Microsoft SQL Server JDBC 3.0:
Nazwa klasy sterownika to com.microsoft.sqlserver.jdbc.SQLServerDriver
.
Format adresu URL to:
jdbc:sqlserver://[serverName[\instanceName][:portNumber]][;property=value[;property=value]]
Tak więc konfiguracja Hibernacji wyglądałaby tak:
<hibernate-configuration>
<session-factory>
<property name="connection.driver_class">com.microsoft.sqlserver.jdbc.SQLServerDriver</property>
<property name="connection.url">jdbc:sqlserver://[serverName[\instanceName][:portNumber]];databaseName=<databaseName></property>
<property name="connection.username">sa</property>
<property name="connection.password">lal</property>
<property name="dialect">org.hibernate.dialect.SQLServerDialect</property>
...
</session-factory>
</hibernate-configuration>
Referencje
- Dokumentacja referencyjna rdzenia hibernacji
- 3.3. Połączenia JDBC
- 3.4. Opcjonalne właściwości konfiguracyjne
- Dokumentacja jTDS
- Dokumentacja sterownika Microsoft SQL Server JDBC 3.0
- Microsoft SQL Server JDBC Driver 2.0
- Matryca wsparcia dla sterownika Microsoft SQL Server JDBC