如何连接hibernate和DB2

我正在运行一个使用struts和hibernate的应用程序。 我目前正在使用Derby数据库。 现在我必须转向DB2数据库。

请告诉我

  • 我在hibernate配置文件中需要做什么配置?
  • 我是否必须设置任何classpath变量?
  • 我知道DB2有两个jar( db2jcc.jardb2jcc_license_cu.jar )。 我还需要其他jar子吗?

提前致谢。

它应该与db2jcc.jar一起使用

将以下属性添加到hibernate.cfg.xml

 org.hibernate.dialect.DB2Dialect com.ibm.db2.jcc.DB2Driver jdbc:db2://:/ dbusername dbpassword 

根据您的配置更改最后3个属性

如果您的DB2驱动程序支持JDBC方法(并且确实如此),则需要设置连接属性。 有三种方法:via xml, hibernate.properties文件和编程配置(更具体地说,参见Hibernate Reference Documentation ,第1章和第2章。这是一个简单的例子,如何做到这一点:

编程方式:

 SessionFactory sf = new Configuration() .setProperty("hibernate.connection.driver_class", "com.ibm.db2.jcc.DB2Driver") .setProperty("hibernate.connection.url", "jdbc:db2://yourDbServerUrl:port/databaseName") .setProperty("hibernate.connection.username", "yourUsername") .setProperty("hibernate.connection.password", "yourPassword") .buildSessionFactory(); 

通过hibernate.properties

 hibernate.connection.driver_class = com.ibm.db2.jcc.DB2Driver hibernate.connection.url = jdbc:db2://yourDbServerUrl:port/databaseName hibernate.connection.username = yourUsername hibernate.connection.password = yourPassword 

您必须在类路径上需要驱动程序(我不知道您拥有的jar是否足够,但可能就是这种情况)并在persistence.xml中将数据库方言设置为org.hibernate.dialect.DB2Dialect

在JBoss中,通常只需要将驱动程序放入服务器的lib目录或应用程序的lib目录中。