一个电子商务web应用的系统架构

王朝other·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

前端时间参加了一个电子商务的项目,对于其中的系统架构景仰不已。这里分web层、业务层和持久层说,与大家分享。

web层用的是:velocity + turbine.velocity是和jsp等同的一种语言。与Jsp相比,它更好地把显示功能独立出来(其实是因为velocity语言没有JSP功能强大)。velocity中没有复杂的逻辑,主要负责把vo中的对象显示出来。与struts解决jsp的缺点对应,我们这个系统用turbine作为控制层,连接显示层和业务层。控制层负责简单的校验,并调用delegate。delegate中调用session bean。

业务层主要封装在AO(Application Object)中。session bean中仅仅调用AO执行业务逻辑。从AO中返回Context直到控制层。之所以不从控制层直接调用AO的原因是为了以后的拓展,和分层、部署。

数据库持久层用的是ibatis。开发过程中专门有人负责DAO这块,我们只要把需要的接口告诉给他就可以了。ibatis是一个开源的框架。与hibernate不同的是它不是实现javabean 与 数据库表的映射,而是javabean与sql 语句的映射。而且所有的数据库操作可以放到xml文件中配置而不会硬编码到java程序中。

该框架还有一个特点是:数据库返回的是DO(Database Object),页面用的是VO(Value Object)。多个DO对象可以合并成一个VO对象,对应一个页面。

框架中用到了很多的服务,通过XML文件来配置服务。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航