论坛首页 Java企业应用论坛

ejb 的session bean 和保存在servlet session中的一个java对...

浏览 6366 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2003-12-02  
ejb 的session bean 和保存在servlet session中的一个java对象有何不同? 在jsp中不是都可以用scope=session来获得吗?请高手赐教
   发表时间:2003-12-02  
sayor 写道
ejb 的session bean 和保存在servlet session中的一个java对象有何不同? 在jsp中不是都可以用scope=session来获得吗?请高手赐教


这是风牛马不相及的两回事。不要因为都有一个session的名称就联想到一起去。找本书来从头学习一下。学习方法参考我的《Java学习从入门到精通》,网站和论坛里面都有贴。
0 请登录后投票
   发表时间:2003-12-02  
其实我也知道他们的不同,只不过想问问如果我在只有少量的数据需要保持在一个回话期间,是否可以不使用session bean先?
0 请登录后投票
   发表时间:2003-12-02  
你用不用session bean视乎你有没有远程调用和使用容器事务的必要。跟保存数据没什么关系。
0 请登录后投票
   发表时间:2003-12-02  
我的出发点是这样的:首先没有远程的调用,我的目的是要在我的web应用中维护一些会话状态,由于一些原因我准备不使用ejb而只是把存储这些会话状态的普通bean放在servlet的HttpSession中存放。servlet的session是通过cookie和url改写来实现的,这和stateful 的Session Bean是完全不同的。我的问题是:如果我现在不想使用ejb,而使用servlet标准中的session,这样是否会带来安全或性能上的问题?
据我所知ejb容器会对ejb的生命周期进行管理包括钝化和激活,而servlet的session虽然也可以钝化(存储在硬盘上减少内存占用)但总感觉不会有ejb来得规范。所以有此一问,请各位不吝赐教。
0 请登录后投票
   发表时间:2003-12-02  
就通常意义而言,没有性能和安全性问题,当然如果你把什么数据都放到Session里面去,当然也不行。

如果要强调安全性,可以使用SSL。 而对于一个Web 应用而言,真正需要保存到Session中的信息是非常少的。因为通常情况下不会有性能问题。

SFSB带有很繁重的容器操作,通常情况下性能很差,一般用在给远程Client端提高方法调用和状态保持用的。原来在jdon上我们也曾经争论过SFSB的性能问题,没有一个结论,但是绝大多数人的共识是不要使用SFSB。
0 请登录后投票
   发表时间:2003-12-02  
robbin 写道
就通常意义而言,没有性能和安全性问题,当然如果你把什么数据都放到Session里面去,当然也不行。

如果要强调安全性,可以使用SSL。 而对于一个Web 应用而言,真正需要保存到Session中的信息是非常少的。因为通常情况下不会有性能问题。

SFSB带有很繁重的容器操作,通常情况下性能很差,一般用在给远程Client端提高方法调用和状态保持用的。


谢谢你的建议,我非常同意你的看法。

另外struts+session bean+DAO+hibernate
    和struts+一般java class+DAO+hibernate两个方案除了分布式之外是否还有其他的区别?如果我现在先用一般的java class实现业务逻辑后,以后如果需要使用ejb(slsb),把session bean作为已有java bean的代理也就是说在action里把原先调用pojo的方法变为调用slsb的方法,然后在slsb中调用pojo的业务逻辑。这样可以不用改动已有的业务逻辑。这样做是否合理?我们team中对ejb的熟悉程度不是很高,而项目第一期用户不会很多,我们感觉用一般的java class可以省去不少我们花在部署was的时间。但以后或许会做扩展,将使用ejb。
0 请登录后投票
   发表时间:2003-12-02  
可以的。

将来替换为SLSB,比较麻烦的地方就是你可能需要把原来手工处理的Transaction都去掉。
0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics