明辉手游网中心:是一个免费提供流行视频软件教程、在线学习分享的学习平台!

to: jeru, 我对nucleus不清楚, 在此谈谈对ejb的感受

[摘要]我对nucleus不清楚在此谈谈对ejb的感受在国内使用java做开发,无论客户端用什么,如jsp/jhtml/applet/application/servlet等只要与DB打交道,如果不用ejb,绝大部分人均会用jdbc写得好的人会将数据库抽象成对象,写得不好的人会直接操作库这两种方法均会产生...
我对nucleus不清楚
在此谈谈对ejb的感受

在国内使用java做开发,无论客户端用什么,如jsp/jhtml/applet/application/servlet等
只要与DB打交道,如果不用ejb,绝大部分人均会用jdbc
写得好的人会将数据库抽象成对象,写得不好的人会直接操作库
这两种方法均会产生以下问题
1、如果你要调用别人的方法,你如何保证事务?[如:A程序员写A_M方法完成某一操作,B程序员想在B_M方法中调用A_M并保证事务]
2、如果你在调用别人方法时保证事务觉得麻烦,你会放弃使用别人的方法,转而自已操作DB并保证事务,此时,java的优点荡然无存
3、由于对DB的操作份散在各个javaBean中,任何时候对DB的修改将影响很多代码

看看ejb如何做
1、ejb与DB没有任何关系,对DB的修改可以通过以下方法来实现只修改局部或完全不修改任何代码
A、修改配置文件
B、增加一个ejb
2、Entity Bean本身每个方法保证事务,最小的单元逻辑操作可以封装在一个Entity Bean中供共亨,多个方法的事务用session Bean实现
3、至于想要负载平衡,想将系统发布到多server,想要使用自己的组件被不同的客户端访问而不用修改等,肯定只能用ejb

最大的一点感受
ejb让你从底层操作中解放出来,更多的将精力置于业务逻辑中
而且它让你以后的扩展性好一些

缺点
 1、出问题时不容易控制,尤其是对其不熟时
 2、支持得的app server都较贵