目次へ

2.3 Hibernate 設定ファイルの準備

Hibernate の設定ファイルを記述します。Hibernate の設定ファイルは、Hibernate がデータベースに 接続するための設定や、マッピングファイルの場所をHibernate に教えるための設定を行います。

hibernate.cfg.xml の役割

設定ファイルはXML形式で記述します。

<!DOCTYPE hibernate-configuration
    PUBLIC "-//Hibernate/Hibernate Configuration DTD//EN"
    "http://hibernate.sourceforge.net/hibernate-configuration-3.0.dtd">

<hibernate-configuration>

  <session-factory>
    <property name="hibernate.connection.driver_class">
      org.postgresql.Driver</property>
    <property name="hibernate.connection.url">
      jdbc:postgresql://localhost:5432/hibernate_master</property>
    <property name="hibernate.connection.username">postgres</property>
    <property name="hibernate.connection.password">postgres</property>
    <property name="hibernate.connection.pool_size">3</property>
    <property name="hibernate.dialect"> 
      org.hibernate.dialect.PostgreSQLDialect</property>
    <property name="hibernate.show_sql">true</property>
    <!-- Mapping files -->
    <mapping resource="com/techscore/hibernate/Book.hbm.xml"/>
  </session-factory>

</hibernate-configuration>

hibernate.cfg.xmlを環境に合わせて編集し、 src フォルダ直下にコピーしてください。 変更する必要があるのは、 hibernate.connection.url, hibernate.connection.username, hibernate.connection.password の 3 つの項目で、その他についてはサンプルのままで問題ないでしょう。
設定ファイルで設定している内容をまとめておきます。

項目備考
hibernate.connection.dribar_class org.postgresql.Driver利用する JDBC ドライバ
hibernate.connection.url jdbc:postgresql://localhost:5432/hibernate_master 接続先 URL
hibernate.connection.usernamepostgres ユーザ名
hibernate.connection.password******** パスワード
hibernate.dialect org.hibernate.dialect.PostgreSQLDialectRDBMS の方言を吸収するためのクラス
hibernate.show_sqltrue 発行したSQL文を標準出力に出力するように設定
mapping filecom/techscore/hibernate/Book.hbm.xmlマッピングファイルを指定。複数指定可

2.4 マッピングファイルの準備

次にマッピングファイルを準備します。マッピングファイルは、Hibernate のそもそもの 目的である「オブジェクトと RDB を結びつける」ための設定をするものです。 マッピングファイルも XML 形式で記述します。

<?xml version="1.0"?>
<!DOCTYPE hibernate-mapping PUBLIC "-//Hibernate/Hibernate Mapping DTD//EN"
"http://hibernate.sourceforge.net/hibernate-mapping-3.0.dtd">
  <hibernate-mapping>
  <class name="com.techscore.hibernate.Book" table="BOOK" lazy="false">

    <id name="isbn" type="string" unsaved-value="null" >
      <column name="ISBN" sql-type="char(17)" not-null="true"/>
      <generator class="assigned"/>
      </id>
    <property name="name" />
    <property name="price" />
  </class>
</hibernate-mapping>
	

1行目〜4行目は、XML 宣言と DTD に関する記述です。 マッピングに関する設定は、5行目〜14行目になります。 class要素で、POJO と テーブルを関係付けています。 7行目〜11行目では、テーブルのプライマリーキーとなっている ISBM カラムについての設定を行っています。11行目〜12行目では、 その他のカラムについての設定をしています。
src/com/techscore/hibernate/Book.hbm.xml に保存してください。

↑このページの先頭へ

こちらもチェック!

PR
  • XMLDB.jp