Proprietà che sono specifiche del database sono:
hibernate.connection.driver_class
:classe driver JDBChibernate.connection.url
:URL JDBChibernate.connection.username
:utente del databasehibernate.connection.password
:password del databasehibernate.dialect
:Il nome della classe di unorg.hibernate.dialect.Dialect
Hibernate che consente a Hibernate di generare SQL ottimizzato per un particolare database relazionale.
Per modificare il database, devi:
- Fornire un driver JDBC appropriato per il database nel percorso classe,
- Modifica le proprietà JDBC (driver, url, user, password )
- Cambia il
Dialect
utilizzato da Hibernate per comunicare con il database
Sono disponibili due driver per la connessione a SQL Server; il jTDS open source e quello Microsoft. La classe del driver e l'URL JDBC dipendono da quello che utilizzi.
Con il driver jTDS
Il nome della classe del driver è net.sourceforge.jtds.jdbc.Driver
.
Il formato dell'URL per sqlserver è:
jdbc:jtds:sqlserver://<server>[:<port>][/<database>][;<property>=<value>[;...]]
Quindi la configurazione di ibernazione sarebbe simile (nota che puoi saltare il hibernate.
prefisso nelle proprietà):
<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>
Con Microsoft SQL Server JDBC 3.0:
Il nome della classe del driver è com.microsoft.sqlserver.jdbc.SQLServerDriver
.
Il formato dell'URL è:
jdbc:sqlserver://[serverName[\instanceName][:portNumber]][;property=value[;property=value]]
Quindi la configurazione di ibernazione sarebbe simile a:
<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>
Riferimenti
- Documentazione di riferimento di Hibernate Core
- 3.3. Connessioni JDBC
- 3.4. Proprietà di configurazione opzionali
- Documentazione jTDS
- Documentazione del driver JDBC 3.0 di Microsoft SQL Server
- Driver JDBC per Microsoft SQL Server 2.0
- Matrice di supporto per driver JDBC per Microsoft SQL Server