web-dev-qa-db-ja.com

HibernateとDB2を接続する方法

Strutsとhibernateを使用するアプリケーションを実行しています。現在、Derbyデータベースを使用しています。今、私はDB2データベースにシフトする必要があります。

教えてください

  • hibernate構成ファイルでどのような構成を行う必要がありますか?
  • クラスパス変数を設定する必要がありますか?
  • DB2には2つのjarがあることを知っています(db2jcc.jardb2jcc_license_cu.jar)。私が必要とするかもしれない他の瓶はありますか?

前もって感謝します。

11

db2jcc.jarで動作するはずです

以下のプロパティをhibernate.cfg.xmlに追加します

<property name="hibernate.dialect">org.hibernate.dialect.DB2Dialect</property>

<property name="hibernate.connection.driver_class">com.ibm.db2.jcc.DB2Driver</property>

<property name="connection.url">jdbc:db2://<Host>:<port50000>/<dbname></property>

<property name="connection.username">dbusername</property>

<property name="connection.password">dbpassword</property>

構成に応じて最後の3つのプロパティを変更します

20
Hardik Mishra

DB2ドライバーがJDBCアプローチをサポートしている場合(およびサポートしている場合)、接続プロパティーを設定する必要があります。これを行うには、xml、hibernate.propertiesファイル、およびプログラム構成の3つの方法があります(より具体的には、 Hibernateリファレンスドキュメント 、第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
2

クラスパスにドライバーが必要であり(使用しているjarが十分かどうかはわかりませんが、そうである可能性があります)、org.hibernate.dialect.DB2Dialectでデータベースダイアレクトをpersistence.xmlに設定する必要があります。 。

JBossでは通常、ドライバーをサーバーのlibディレクトリまたはアプリケーションのlibディレクトリに配置するだけで済みます。

0
Thomas