• 关于系统架构中的分层


         分层,由业务来决定,小的系统一般分为三层(ui,业务,数据访问),既可。ui层是负责和用户交互,也就是所有和用户交互的,都应该放在这一层,业务层是业务实现的,也就是实现用户想要做的事情,数据访问层,就是去存储数据地方(可能是数据库,也可能是xml,也可能是一个队列),提取数据,删除数据,修改数据。从面向对象的角度来说,应该在有一个实体层,这里面有一堆的封装了数据的对象,业务层要用的数据,应该来自这里,而不应该是来自数据库,数据库仅仅是这些对象的映射,负责对映射过来的数据进行管理。那么这些对象的数据怎么来呢,很简单,数据访问层,来做就可以了,也就是数据访问层,在传统的功能基础上,还多了一项功能,创建含有数据的实体对象。这样从ui到业务,就全是对象了,所谓的数据访问层,其实只是一个辅助层而已。

        当系统很大或者需要应对多种情况的时候,传统业务层(也就是只有一堆类的层)是不行了,于是为了应用设计模式,依赖注入,解偶这些解决大的系统或需要经常变化的问题的理论,我们要增加业务接口,业务工厂。

        为了让我们系统效率更高,我们引入缓存层,把一些公用的,不怎么变化的,大型数据缓存起来。

       有时候我们的系统业务层,也需要给别的地方用,怎么弄呢,webservice,是个好办法,于是有了service层,其实这也是soa的雏形。

        为了灵活的控制权限,异常,日志,可能还需要加上aop的拦截器这一层。

  • 相关阅读:
    kettle常见问题解决
    kettle 数据库连接中断重置
    笔记本wifi共享给手机 连接连笔记本wifi
    java.sql.SQLException: Io 异常: Connection reset
    ORA-01013:用户请求取消当前的操作
    dubbo 解决Multicast java.net.SocketException: No such device
    linux设置系统日期时间
    dubbo Linux 解决:nc: command not found
    DUBBO本地搭建及小案例
    使用maven编译dubbo,导入eclipse(其他maven开源项目编译类似)
  • 原文地址:https://www.cnblogs.com/chenleinet/p/1654698.html
Copyright © 2020-2023  润新知