信息管理系统的层次设计
来源:互联网 发布:龙江网络客服电话多少 编辑:程序博客网 时间: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,只需重写持久化层。
以上的层次划分有许多不足之处,希望给为朋友提出指正!!
- 信息管理系统的层次设计
- 信息管理系统的层次设计
- 系统测试设计的层次
- 信息管理系统设计书的结构框架
- 图书信息管理系统设计
- 学生信息管理系统设计
- 嵌入式系统设计主要的三个层次
- VB设计培训信息管理系统
- 病患住院处信息管理系统设计
- 课程设计:学生信息管理系统设计
- 课程设计---图书信息管理系统设计
- 基于web信息管理系统的权限设计分析和总结
- 链表类的设计——学生信息管理系统
- 信息管理系统的营销
- 文本行查询系统[3]-系统的体系层次设计
- [原创]工作流系统设计的层次和目标
- Linux嵌入式系统设计的第一二层次
- 第一次优化后---学生管理系统(层次分明的设计)
- 如何实现每天定时对数据库的操作
- 如何实现每天定时对数据库的操作
- CMS 前台统一导航设计
- 数字水印技术:概念、应用及现状
- 学习编程的七大忌讳
- 信息管理系统的层次设计
- BMP Image Sequences for Elliptical Head Tracking
- web2.0关程序员什么事?
- Java学习之路:不走弯路,就是捷径
- Servlet tips --security
- Web标准
- ASP.NET高级应用
- 北大教授健康讲座笔录
- sql 防注入的一种方法