CSDN博客

img echohfut

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

发表于2004/9/23 13:22:00  750人阅读

前端时间参加了一个电子商务的项目,对于其中的系统架构景仰不已。这里分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文件来配置服务。
0 0

相关博文

我的热门文章

img
取 消
img