关于Session Bean 与 Entity Bean 的一个问题
这两日正在研究一个别人写的Ejb项目的源代码,结构很简单:Jsp + Model Class + Ejb。所有与DATABASE打交道的代码(如Select, Update, Remove等SQL语句执行)都写在Ejb里,但问题就在这儿:他没用Entity Bean(实体), 所有的Bean都是Session Bean。这确实与我通常的理解相背:我也做过一两个J2EE的项目,都是创建BMP型的Entity Bean, 然后那些DATABASE的操作都要写在其ejbLoad, ejbStore, ejbCreate等方法内。Session Bean也使用,但它们都不直接进行Database操作而是调用Entity Bean。
所以,我现在的问题是:1)难道我们真的可以不用Entity Bean而仅用Session Bean做所有的工作?至少从我这个朋友的项目来看是这样的。如果真是如此,Entity Bean岂不是多余的?2) Session Bean 有无CMP和BMP之分,如果有,我所看的这个项目中,它所用的Session Bean 应该是CMP的,还是BMP?
请详解!多谢分析! 若哪位能留下电话,最好。我想直接联系您! 谢谢!