关于用实体bean实现跨越多个表或视图的业务实体的疑问
一般来说,一个实体bean表示的是一个表中的某条记录(我的理解),在bang的《EJB/JBOSS实战开发教程》是如此描述:“,CMP可以看成是内存中的数据表。只要对CMP实现数据操作,就相当于对数据表实现操作。见下图,CMP 通过JNDI 和数据表建立Mapping 映射后,所有对CMP的操作,都会自动映射到数据表的操作,这种映射是自动的,由容器实现的,所以,使用CMP对数据表实现增删改查,基本无需写SQL语句。”
我的疑问是:当存在一个业务实体User,如图:
它由基本用户信息、多个用户电话、多条用户地址、多种用户证件组成,即一个用户对应多条明细。这种一对多的关系由一个实体bean实现还是多个实体bean实现?如果用一个实现,怎么写sql?
另一个疑问:当存在一个员工实体,如图:
一个员工必定是一个用户,是一对一的关系。一个员工信息包括用户表的信息和员工表的信息,这种相当于一个视图的业务实体怎么用实体bean实现由一个实体bean实现还是多个实体bean实现?如果用一个实现,怎么写sql?实体bean可以对视图进行操作吗?
希望能阐述一下具体实现,谢谢!