关联

通常,转换对关联执行转换的方法与“UML 到 Java”转换的方法相同:它将端点属性转换为 Java 属性。

如果关联的端点是具有 <<Entity>>、<<Service>> 或 <<MessageProcessor>> 构造型的类,则转换不会转换该端点。而是转换会在元数据目录中的日志文件内写入声称端点属性未被转换的消息。但以下情况例外:关联处于两个具有 <<Entity>> 构造型的类之间,并且这两个类都生成为 CMP 2.x Bean。然后,转换将 UML 关联转换为 EJB 2.0 关系(也称为容器管理的关系(CMR))。下表说明了关联属性和 EJB 关系属性之间的映射:

关联属性

EJB 关系属性

End1

BeanA

End2

BeanB

End1 名称

BeanB CMR 名称

End2 名称

BeanA CMR 名称

End1 可导航性

BeanB 可导航性

End2 可导航性

BeanA 可导航性

  • End1 上限值 = 1
  • End1 上限值 = -1
  • BeanB 多重性 = 1
  • BeanB 多重性 = -1,BeanA CMR 类型 = java.lang.Collection
  • End2 上限值 = 1
  • End2 上限值 = -1
  • BeanA 多重性 = 1
  • BeanA 多重性 = -1,BeanB CMR 类型 = java.lang.Collection

下图说明了具有 <<Entity>> 构造型的两个 UML 类。如果转换将两个实体类都生成为 CMP 2.x 实体 Bean,则这两个类之间的关联就生成为 CMR。

转换发生后,部署描述符就有一个描述 AEntity 和 BEntity 之间的 CMR 的条目。如下图所说明的,项目的部署描述符可以显示两个 CMP 2.x 实体 Bean 之间的关联:

 

 

使用条款 | 反馈
(C) Copyright IBM Corporation 2004. All Rights Reserved.