EOModelerでリレーションシップを張る

リレーションシップを張ることで、リレーショナルデータベースと同様に親子関係をつくれる。

リレーショナルデータベース上のリレーション設定とは関係なく動作させることができる。なので、Oracleのテーブルを親にして、MySQLのテーブルを子供にしてリレーションシップを張ることも可能。

 

■親テーブルを選択する

赤いドーナツ型のアイコンをクリックして、親となるテーブル(エンティティ)を選択する。

 

■リレーションシップを設定する

Property > Add Relationship を選択する。

 

インスペクタウィンドウでの設定例(親:Company 子供:Staff の場合)

  • Name: manyStaff
  • Entity: Staff
  • リレーションシップのタイプ: To Many
  • Source Attributes: CompanyのIDフィールド
  • Destination Attributes: Staffの外部キーフィールド

 

■Javaファイルをマージする

Property > Generate Java Files... を選択する。

既に、Javaファイルが存在するときは、アラートが表示されるので、Merge ボタンを押す。

「矢印で選んでいる側を選択して上書き保存する」という働きをしてくれる。

 

リレーションシップを張ったけど動作しないときは、Javaファイルのマージを忘れていないかチェックする。