信息管理系统的层次设计

来源:互联网 发布:龙江网络客服电话多少 编辑:程序博客网 时间:2024/05/18 07:38

    目前,较为流行的信息管理系统的架构设计均采用分层结构,将不同的功能由相应的“层”来解决。例如MVC模式就是一个较为常用的分层架构。本文介绍笔者在工作中经常采用的一个分层架构,希望与读者交流。

       管理信息系统一般业务逻辑比较复杂,变化多样,展示界面要求功能丰富,基于以上的特点,在开发管理信息系统时建议采用如下的分层架构。

展示层(View

控制层(Controll

服务层(Server

原子业务逻辑层(AppLogic

持久化层(DAO

存储层(数据库/文件)

实体

数据包

下面分别介绍各层的功能。

1展示层

       展示层的主要功能是与用户交互,向用户展示数据,搜集用户的操作和录入的数据,生成数据包(例如生成一个FormBean或者是封装数据的XML文件,一个字符串等)提交给控制层并将控制层返回的数据包展示给用户。展示层的开发不仅仅局限于web页面,也可以采用其他工具开发的客户端来展示数据,例如用PB的客户端软件充分利用PB数据窗口的强大数据展示功能和XML文件的解析功能来满足用户的复杂的界面操作要求焦,或者采用AJAX技术实现数据的展示。

 

2 控制层

       控制层的主要功能是完成数据的转换和服务的调用。控制层接到展示层的调用请求时,负责将展示层提交的数据包转化成服务层可以处理的实体,调用相应的服务,将服务层处理后的实体转化成数据包提交给页面。例如在具体的应用中,控制层可以对应struts架构的一个action或者是SOA架构的一个WebServices。控制层只负责数据的传递和页面的跳转,将业务逻辑与展示界面解耦。

 

3服务层

       服务层负责业务逻辑的组装,事务的控制和异常的处理。服务层的每一个“服务”应该是一个相对完整的业务逻辑,通过组装原子业务逻辑成的原子业务逻辑来实现。服务层还要负责事务的控制和异常的处理。服务层应该保证相应的业务逻辑在一个完整的事务中实现。服务层对下层抛出的异常做最终的处理。

 

4原子业务逻辑层

       原子业务逻辑层是对业务逻辑的抽象实现,保证每个原子业务逻辑是不可分割的,最大提高原子业务逻辑的复用性。每个原子业务逻辑相当于一个组件,在服务层把这些组件组装成完整的业务逻辑。

 

5持久化层

       持久化层是对实体持久化操作的封装。例如如果使用数据库作为持久化的载体,那么持久层应该封装所有对数据的增删改查的操作,如果使用XML文件作为数据持久化的载体,则持久化层封装所有对XML文件的操作。持久化层的主要职责是实现业务逻辑与数据持久化操作的解耦。

       采用以上的分层结构有如下的有点:

1实现数据展示,业务逻辑操作和数据存贮解耦,提高系统的扩展性。

2利于工作的分工,不同的人员可以专主于某一层的设计和开发,例如页面设计人员只负责展示层的开发,无需关心业务逻辑和持久化操作,熟悉业务逻辑的人只负责业务逻辑的抽象和封装。精通数据库操作的人员专注实体的持久化的操作。

3业务逻辑的抽象和封装比较复杂,可以通过不同重构原子业务逻辑层提高复用率。

4对持久化层的封装利于数据持久化载体的选择,例如将数据库平台从oracle移植到DB2,只需重写持久化层。

以上的层次划分有许多不足之处,希望给为朋友提出指正!!

原创粉丝点击