Hibernate的一个卖点是数据库的移植性。用户可以改变数据库供应商,或者可以同时使用多个数据库的产品。Hibernate可以帮助你运行多种数据库而无需修改你的代码。
Hibernate对不同数据库的连接配置:
在hibernate.cfg.xml文件中
MySQL
- <hibernate-configuration>
- <session-factory >
- <!-- MySQL:驱动 -->
- <property name="connection.driver_class">com.mysql.jdbc.Driver</property>
- <!-- JDBC URL -->
- <property name="connection.url">jdbc:mysql://localhost/</property>
- <!-- 数据库用户名-->
- <property name="connection.username">root</property>
- <!-- 数据库密码-->
- <property name="connection.password">root</property>
- <!-- 方言:设为MySQL -->
- <property name="dialect">org.hibernate.dialect.MySQLDialect</property>
- <mapping resource="com/tigaoban/hibernate/User.hbm.xml"/>
- </session-factory>
- </hibernate-configuration>
Oracle
- <property name="connection.driver_class">oracle.jdbc.driver.OracleDriver</property>
- <property name="connection.url">jdbc:oracle:thin:@localhost:1521:dbname</property>
- <property name="connection.username">test</property>
- <property name="connection.password">test</property>
- <!--
- Oracle不同版本的方言设置
- Oracle(any version): org.hibernate.dialect.OracleDialect
- Oracle 9i : org.hibernate.dialect.Oracle9iDialect
- Oracle 10g : org.hibernate.dialect.Oracle10gDialect
- Oracle 11g : org.hibernate.dialect.Oracle10gDialect
- -->
- <property name="dialect">org.hibernate.dialect.OracleDialect</property>
PostgreSQL
- <property name="connection.driver_class">org.postgresql.Driver</property>
- <property name="connection.url">jdbc:postgresql://localhost:5432/dbname</property>
- <property name="connection.username">postgres</property>
- <property name="connection.password">postgre</property>
- <property name="hibernate.dialect">org.hibernate.dialect.PostgreSQLDialect</property>
DB2
- <property name="connection.driver_class"> com.ibm.db2.jdbc.app.DB2Driver </property>
- <property name="connection.url"> jdbc:db2://localhost:5000/dbname </property>
- <property name="connection.username">admin</property>
- <property name="connection.password"></property>
- <property name="hibernate.dialect">org.hibernate.dialect.DB2Dialect</property>
MS SQL Server
- <property name="connection.driver_class">net.sourceforge.jtds.jdbc.Driver</property>
- <property name="connection.url">jdbc:jtds:sqlserver://localhost:1433;DatabaseName=dbname</property>
- <property name="connection.username">sa</property>
- <property name="connection.password"></property>
- <property name="hibernate.dialect">org.hibernate.dialect.SQLServerDialect</property>
Tips
其他数据库请参看:解压hibernate后etx文件夹中的hibernate.properties文件找到。