2013-07-23 34 views
1

我有一个ejb 2.1 m:n的关系。 该表正在自动创建。 事情是我想指定将由这种关系创建的表名称。为ejb指定表名称2.1多对多关系

问题:
难道一个多对多的关系必须指定我希望创建,而不是默认的表名(这是关系中所涉及的表的串联),该表的名称属性?或者有另一种方法来实现这一目标?

详细
我使用:

  • XDoclet的
  • Myeclipse的
  • EJB 2.1
  • jboss-4.2.3.GA

我敢肯定的问题是非常具体的,但无论如何,以下是关系tionship代码

/** 
* @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

回答

1

你应该把下面的注释中getEmpresas()方法:

@jboss.relation-table table-name="SYO_CampanhaFidelidade_Empresas" 
+0

....农民.... –