1,实体组件只是ejb层中的实现选择之一.实体组件不应该被暴露给客户软件.web层与其他ejb客户软件绝不应该直接访问实体组件.它亿只应该与由实现应用业务逻辑的会话组件所构成的一个会话组件层打交道.这不仅保持了应用设计与实现中的灵活性,而且常常还改进了性能.
3,实体组件通常是一 个薄层,用于具体化一个不是基于对象的数据存储器.如果使用一个像odbms之类的面对对象的数据存储器,这个薄层不是必需的,因为可以使用助手类从会话组件中访问这种数据存储器 【程序编程相关:JetBrains推荐图书读后感】
2,会话组件最好只通过普通java数据存取接口的一个持久性门面来访问实体组件.虽然实体组件衽了一种特殊的数据处理方法,但标准java接口却没有.这种方法不公保持了灵活性,而且还预见性地检验了一个应用.笔者对实体组件的未来产生了极大的怀疑,因为凡是在实体组件适用的任何地方,jdo都能提供一个更简单.更通用.性能更高的解决方案.通过使用dao,我们仍有换用jdo或其他任一持久性策略的能力,即便在一开始就使用实体组件实现了一个应用之后. 【推荐阅读:设计文档[二]】
5,一个粗实体可能会建模一条逻辑记录,而这条记录会分布于多个表中;而一个精细粒度可能会映射到单个表中;在ejb2.0 cmp中通常认为精细粒度会更加方便,虽然粗粒度的建模更利于面向对象的设计,但有一个结论就是: 【扩展信息:ashkelon:一种源代码发布系统】
4,关于实体组件的争论有两点:一)实体组件的粒度,二)实体组件是否可以实现业务逻辑.
在ejb2.0中,最好是通过使用cmp把实体组件用于相当精细的对象.... 下一页