呵呵,你们两位误解了,也不要吵。
我提的一个话题时Session处理,正如zdbj2ee所提出的那样:
>如果你在做电子商务会用到购物车,你可以在这个用户进入第一个>action>时.把购物车的对象(内有存放数据\删除数据\得到数据的方法)>存放到session中.在用户结账时,调用结账action得到session中的数据,调用业务方法,业务方法再调用对dao完成结账.
我是要等这个答案,购物车我们会放置到HttpSession中,那么如何放在HttpSession呢?无疑是通过request.getSession等命令或Struts或JSF相关配置,那么你肯定需要一个操作HttpSession的action之类的操作类,那么购物车Model和对购物车的操作Process将是可能是在表现层中MVC中的Controller部分,如果用struts也就是要编制一个action类操作httpSession中的购物车。
但是我们知道,购物车是一个业务Model,对购物车Model的操作也属于建模的一部分,象购物车这样的重要业务模型应该是在业务层实现,而不是表现层。但是因为Spring容器没有提供Session操作,就使得我们在业务容器中实现Session方面得操作,只能使用上述原始方案。
想像一下,如果我们购物车在业务层实现,业务层框架如Jdon Framework提供了Session操作,那么我们几乎所有业务功能都可以在业务层实现,表现层的MVC中的Controller将只成为流程调度,而这些都是可以使用XML配置实现,无需太多代码,JSP页面也是XML格式的标签库。
这样,我们就可以快速开发一个J2EE系统,而不用经常在考虑:哪些放在action中调用,哪些放在业务容器中调用,这种选择很浪费时间,而且Spring这样容器无法提供对HttpSession数据操作,使得以后拓展有关Session操作时,只能将这些POJO从Spring容器中移植出来。
我讲这些,无疑是从开发快速性和功能完整性对Spring一个期望,但是也请他们在功能没有完整之前,不要狂叫without EJB,而且也不要请一些不等实战的高手不要在各种媒体上用繁话似景的理论来误导实战者。
欢迎zdbj2ee提出更多实战中质量高、开发速度快的解决方案,