2017-02-21 4 views
0

次のハイバネーションマッピングファイルは、期待どおりにJavaクラスとDEPARTMENTテーブルを生成しますが、DBにDPT_TEACHERSテーブルを作成しません。hibernateマッピングファイルからDDLを生成

<hibernate-mapping> 
    <class name="hibernate.Department" table="DEPARTMENT"> 
     <id name="id" column="ID"> 
      <generator class="native"/> 
     </id> 
     <property name="subject" column="SUBJECT" type="string"/> 

     <set name="teachers" table="DPT_TEACHERS"> 
      <key column="ID"/> 
      <one-to-many class="hibernate.Teacher"/> 
     </set> 
    </class> 
</hibernate-mapping> 

答えて

0

あなたは自動的にスキーマを作成するには、プロパティをあなたはhibernate.cfg.xmlでデータベース接続のプロパティを持つ

hibernate.hbm2ddl.auto

を追加する必要があります。

<property name="hibernate.hbm2ddl.auto">create</property> 

<property name="connection.driver_class">com.mysql.jdbc.Driver</property> 
<property name="connection.url">jdbc:mysql://localhost/Test?createDatabaseIfNotExist=true</property> 
<property name="connection.username">root</property> 
<property name="connection.password"></property> 
<property name="connection.pool_size">10</property> 
0

table = "DPT_TEACHERS"は必須ではありません。 1:N関係を作成する別のテーブルは必要ありません。キー列= "ID"は分かりにくいので、キー列= "TEACHER_ID"にする必要がありますので、1:Nの関係で教師用テーブルに追加することができます

関連する問題