>可以这样理解。
不知道BANQ的理解是我第一个说的还是第二个说的,也就是SEAM中的业务会话真正实现了类似于JAVA EE中的SESSION还是说业务会话作为组件还需要保存在HTTPSESSION里面!!!!(问题一)
(问题二)
>有态Bean需要hold在httpsession!
关于EJB的有状态会话BEAN,在组件内部保存了针对某一客户请求的状态,但是这个有状态的BEAN也是保存在HTTPSESSION中才能被客户的后续访问得到(我是这样理解的),如果前面的理解正确,那么突然有个不理解的地方,以前利用SESSION保存的例如用户登陆信息这样的USER和目前采用有状态的会话BEAN有何区别,同样都保存在HTTPSESSION中,虽然有状态BEAN有吨化等操作.
除了SEAM和JDON框架,如果单纯的使用EJB的有态BEAN的时候,还是需要手动的将BEAN放置在SESSION中的,例如购物车组件等,我不理解的问题就是.........
这些组件最终还是要被保存在HTTPSESSION中,那么究竟的区别是什么?(因为我们开发的一个有态BEAN也要放置在HTTPSESSION中,所以就有些迷茫)
请BANQ详细解释下关于应用HTTPSESSION和有状态会话BEAN,有状态会话BEAN究竟相对HTTPSESSION对于应用有哪些好处(个人认为对这个问题的理解可以对状态有更好的理解!),谢谢了!
(问题三)
>需要session状态保存这些选中的商品,你总不能使用HttpSession来实现吧,那业务功能不是跑到表现层了,违反了分层原则,这是架构大忌啊。
这里不把状态保存在HTTPSESSION,而是通过购物车对象进行封装后放入HTTPSESSION中,也说明了将业务功能跑到了表示层吧.这个地方不是很理解.
综合上面三个问题:我感觉我不理解的地方就是,以前我们是将状态保存在HTTPSESSION中,但是现在可以将状态放置在有态BEAN中,但最终还是放入了HTTPSESSION中保存,只是中间将状态用有态对象封装了一下,那么究竟这样做的意义何在?越来越糊涂了!
[该贴被yongbuyanbai于2008-10-30 11:02修改过]