两个实体bean之间相互引用是不好的做法
最好的做法是把一个实体bean对应成a  b两表的一个视图,也就是说, a  b两表关联后对应实体bean.

解决方案 »

  1.   

    使用实体bean是为了简化数据库操作,但你的做法是背道而驰的呀
      

  2.   

    使用实体bean是为了简化数据库操作,但你的做法是背道而驰的呀
      

  3.   

    有专门维护实体BEAN关系的表格存在,只是在以前要维持关系的话,是由我们自己做的。现在,由EJB容器来帮我们完成这些工作。不过1:1的关系也不需要另外的表,比如雇员和雇员地址是1:1的关系,那么我们只需要对容器在部署时指定这样的关联。容器在生成表格的时候,会自动在雇员对应的表格后面添加一个字段addresskey,它记录了雇员地址(addressejb)的主键。如果是1:N的关系,是在N一方存储这样的外键,如果是N:N,就需要单独的关系表格来维持了,同样这些工作都是容器自动完成的
      

  4.   

    使用实体bean是为了简化数据库操作,但你的做法是背道而驰的呀
      

  5.   

    有专门维护实体BEAN关系的表格存在,只是在以前要维持关系的话,是由我们自己做的。现在,由EJB容器来帮我们完成这些工作。不过1:1的关系也不需要另外的表,比如雇员和雇员地址是1:1的关系,那么我们只需要对容器在部署时指定这样的关联。容器在生成表格的时候,会自动在雇员对应的表格后面添加一个字段addresskey,它记录了雇员地址(addressejb)的主键。如果是1:N的关系,是在N一方存储这样的外键,如果是N:N,就需要单独的关系表格来维持了,同样这些工作都是容器自动完成的
      

  6.   

    to  xioyoo(丁鹏) 
    首先谢谢你的回答!
    那如果先已有两个表,雇员和雇员地址;按你的意思是如果关系是1:1的,当我部署成功后,它会自动修改我的雇员表的结构并添加一个字段,是这个意思吗?如果是这样的话,那么该字段是什么类型的呀,直接打开该数据库可以看到该修改吗?还有对于1:n,和n:n的情况,你说是生成的单独的关系表格.那么该表格我在数据库中是否也能直接看到,它的命名是否有什么样的规律可寻?谢谢!
      

  7.   

    对,你可以自己试一下。
    比如用CMP来做雇员和雇员地址的1:1的例子的话,只要将AddressBean指定为
    EmployeeBean的关系字段的话,那么容器在自动生成表的时候,会自动修改EmployeeBean的表结构,为它添加一个联系AddressBean的字段,例如叫:AddressKey.至于这个AddressKey的类型,当然是AddressBean的Primary key啦!
    1:N,和N:N同理!而且这些表格在部署完成后,在数据库中是完全可见的。
      

  8.   

    对,你可以自己试一下。
    比如用CMP来做雇员和雇员地址的1:1的例子的话,只要将AddressBean指定为
    EmployeeBean的关系字段的话,那么容器在自动生成表的时候,会自动修改EmployeeBean的表结构,为它添加一个联系AddressBean的字段,例如叫:AddressKey.至于这个AddressKey的类型,当然是AddressBean的Primary key啦!
    1:N,和N:N同理!而且这些表格在部署完成后,在数据库中是完全可见的。
      

  9.   

    对,你可以自己试一下。
    比如用CMP来做雇员和雇员地址的1:1的例子的话,只要将AddressBean指定为
    EmployeeBean的关系字段的话,那么容器在自动生成表的时候,会自动修改EmployeeBean的表结构,为它添加一个联系AddressBean的字段,例如叫:AddressKey.至于这个AddressKey的类型,当然是AddressBean的Primary key啦!
    1:N,和N:N同理!而且这些表格在部署完成后,在数据库中是完全可见的。
      

  10.   

    是Primary key吗?但我是一个关键字类呀(也就是由两个以上的字段组成的呀)?
    那它的类型会是什么呢?
    很感谢xioyoo(丁鹏) 回答,明天一早就结贴!谢谢你的回答!
      

  11.   

    你是说你的primary key是一个自己实现的CLASS对吗?
    抱歉,这种情况我还没有实际做过!
    但我几乎可以肯定得告诉你,在EJB规范中,自己实现的primary key class必须是RMI/IIOP中的合法类型(也就是可序列化的),因此,它的原理和序列化类在
    数据库中持久的原理是一样的!
      

  12.   

    同意woowindice(黑山老妖) 的作法,大家继续讨论。