MVC和领域模型

作者: neo_ng | 来源:发表于2019-02-26 10:50 被阅读56次

    outline

    • MVC
    • 领域模型

    MVC

    Model封装了你的应用数据、应用流程和业务逻辑。-Model被称为领域模型
    View从Model获取数据并格式化数据以进行显示。
    Controller控制程序流程,接收输入,并把它们传递给Model和View。


    微信图片_20190226104045.jpg

    controller: 单例
    Spring中默认单例:

    领域模型:

    image

    实体类的分类:

    1.展示层(VO-View/Value Object,视图对/业务对象):
    2.服务层(DTO-Data Transfer Object,数据传输对象)
    3.领域层(DO-Domain Object,领域对象)
    4.持久层(PO-Persisent Object,持久对象)
    各种实体类用于不同业务层次间的交互,并会在层次内实现实体类之间的转化。

    领域模型中实体类的含义及作用

    实体类 含义及作用
    VO 代表展示层需要显示的数据,每一个属性都一一对应当前业务逻辑所需要的数据的名称。
    DTO 代表服务层需要接收的数据和返回的数据
    DO 从现实世界中抽象出来的有形或无形的业务实体
    PO 物理数据的对象表示。PO的属性是跟数据库表的字段一一对应的。PO对象需要实现序列化接口由一组属性和属性的get和set方法组成

    领域模型中实体类的命名方式:

    实体类 命名方式 生命周期
    VO 以相应字符串结尾,如*VO.Java
    DTO 与他的用途有关,如写成*Query.java--表示一个查询条件
    DO
    PO 只能存活在一个数据库连接中,断开连接即被销毁

    DO和PO在绝大部分情况下是一一对应的 DO具有业务方法

    业务分层:

    1.视图层(VIEW+ACTION)
    2.服务层(SERVICE)
    3.持久层(DAO-data access object,数据库访问层):具体到对于某个表、某个实体的增删改查

    dao: 每个DAO都要包含一个不同的Connection对象实例,
    请求在不同的线程中处理
    每个线程走的逻辑相同,但并没有用到共享的数据,所以可以用单例模式~
    线程拥有自己的栈空间--方法
    单实例多线程

    BO:business object 业务对象,封装业务逻辑的java对象,通过调用DAO方法,结合PO,VO进行业务操作。

    相关文章

      网友评论

        本文标题:MVC和领域模型

        本文链接:https://www.haomeiwen.com/subject/mdqmeqtx.html