|
|
我是Java 完全新手, 想征求Java developer 的意见
问题前提 :
在EJB3 里 , 一个 EntityBean A 与另外一个EntityBean B的联系(link) , 是用一个reference variable of linked Entity Bean class , 然后通过 annotation @OneToMany, @OneToOne etc 来办到。
在我的design , 一个 table 里 都有几个特别的 field 来记载 record creation 的 userid , record last modified userid.
所以, 在 一个entity bean 里, 我都会有这些 fields
class Material
{
<省略>
:
private string createUser;
...
}
目前我是用这种方式。 应该没有问题。
可是, User 其实也是一个Table , 所以也有一个 User EntityBean 。
所以, 我现在想把这个 createUser , 换成
private User createUser;
我想这个应该不是问题。
但是, 我突然想到, 在 User table 里 , 也有这个 createUser 这个field 。
那么 User EntityBean 岂不是会变成这样
class User
{
<省略>
:
@OnetoOne ....
private User createUser;
}
问题来了 :
User class 里有着 一个 User 的 reference variable , 在C++ 没问题,也是Link list 的基础概念。
我相信在一般的Java class 应该也没有问题, 但是在 EntityBean , 有着annotation 的情况呢?
我的问题是, 这个情况
1. 理论上能不能办到 ?
2. 实际上, 应不应该这样作, 值不值得这样作?
3. 还是该用普通的方式, 以 一个 普通 variable 来收着 foreign table 的ID (key) for 这个 case
欢迎多多指教, 谢谢 |
|