私は ejb 2.1 m:n 関係を持っています。テーブルは自動的に作成されています。問題は、この関係によって作成されるテーブル名を指定したいということです。
質問:
多対多の関係には、デフォルトのテーブル名 (関係に含まれるテーブルの連結) の代わりに作成するテーブル名を指定する属性がありますか? またはそれを達成する別の方法はありますか?
私が使用している詳細:
- Xドックレット
- マイエクリプス
- EJB 2.1
- jboss-4.2.3.GA
質問が十分に具体的であると確信していますが、いずれにしても以下は関係コードです
/**
* @ejb.interface-method view-type="both"
* @ejb.relation
* name="empresas-campanhas"
* role-name="campanha de empresas"
* target-role-name="empresas tem campanhas"
* target-ejb="Empresa"
* target-multiple="yes"
* @ejb.value-object
* compose="<package>.EmpresaValue"
* compose-name="EmpresaValue"
* members="<package>.EmpresaLocal"
* members-name="EmpresaLocal"
* relation="external"
* @jboss.relation
* fk-column="id_empresa"
* fk-constraint="true"
* related-pk-field="idEmpresa"
* @jboss.target-relation
* fk-column="ID_CampanhaFidelidade"
* fk-constraint="true"
* related-pk-field="idCampanhaFidelidade"
*/
public abstract Collection getEmpresas();
/**
* @ejb.interface-method view-type="both"
*/
public abstract void setEmpresas( Collection empresas );
テーブルを作成しています:
campanhafidelidade_empresas_empresa_campanhafidelidade_empresas
しかし、私は指定したい:
syo_campanhafidelidade_empresas
.